---
Fuzzer filename: "AuthenticodeAppxSignerFuzzer"
Fuzzing method: "fuzzerTestOneInput"
All functions:
  Function list name: "All functions"
  Elements:
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$000(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$000(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$000(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].setup()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].setup()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].setup()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getService(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,java.lang.String[])"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,net.jsign.bouncycastle.crypto.CryptoServiceProperties[])"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadPQCKeys()"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 39
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "loadAlgorithms(java.lang.String,java.lang.String[])"
        - "loadAlgorithms(java.lang.String,net.jsign.bouncycastle.crypto.CryptoServiceProperties[])"
        - "getService(java.lang.String,java.lang.String)"
        - "loadPQCKeys()"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,java.lang.String[])"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,net.jsign.bouncycastle.crypto.CryptoServiceProperties[])"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadPQCKeys()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getService(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,java.lang.String[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadServiceClass(java.lang.String,java.lang.String)"
    functionUses: 7
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "loadServiceClass(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadServiceClass(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadServiceClass(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.RSA$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil].loadClass(java.lang.Class,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Class].newInstance()"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
        - "loadClass(java.lang.Class,java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil].loadClass(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.Class].newInstance()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil].loadClass(java.lang.Class,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadAlgorithms(java.lang.String,net.jsign.bouncycastle.crypto.CryptoServiceProperties[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.Utils$DefaultProperties:META-INF.versions.9.org.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF:META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService:net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties:net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF:net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getServiceName()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadServiceClass(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServiceProperties].getServiceName()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "loadServiceClass(java.lang.String,java.lang.String)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getServiceName()"
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "loadServiceClass(java.lang.String,java.lang.String)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getServiceName()"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServiceProperties].getServiceName()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadServiceClass(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].loadPQCKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getService(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.Provider$Service"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 1
    ICount: 32
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBigNumPositive()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "getPropertyValue(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].shiftRight(int)"
    - "[java.math.BigInteger].longValue()"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField:net.jsign.bouncycastle.math.field.PrimeField].getDimension()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].getCharacteristic()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].getCharacteristic()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField:net.jsign.bouncycastle.math.field.PrimeField].getCharacteristic()"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getCharacteristic()"
        - "getDimension()"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getCharacteristic()"
        - "getDimension()"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getCharacteristic()"
        - "getDimension()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.ChannelUtils].<init>()"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: -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.jsign.ChannelUtils:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.nio.channels.WritableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:41"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:47"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:38,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:39,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:41,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.ChannelUtils:41,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.ChannelUtils:42,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:43,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:44,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:45,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.nio.channels.SeekableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.Buffer].capacity()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].position()"
    functionUses: 1
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:54"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:50,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:52,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.ChannelUtils:55,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.ChannelUtils:55,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.ChannelUtils:56,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:57,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:59,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:60,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:61,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:64,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:65,1"
      Dst: "[java.nio.Buffer].position()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].insert(java.nio.channels.SeekableByteChannel,long,byte[])"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    - "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.Channel].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.File].delete()"
    functionUses: 1
    ICount: 43
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:76"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:79"
        BranchSideFuncs:
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - Branch String: "net.jsign.ChannelUtils:89"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:90"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:89"
        BranchSideFuncs: []
    - Branch String: "net.jsign.ChannelUtils:81"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:91"
        BranchSideFuncs:
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
      - BranchSide: "net.jsign.ChannelUtils:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:76,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.ChannelUtils:77,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.ChannelUtils:80,1"
      Dst: "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - Src: "net.jsign.ChannelUtils:81,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.ChannelUtils:81,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.ChannelUtils:82,1"
      Dst: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.ChannelUtils:84,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:85,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.ChannelUtils:85,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:88,1"
      Dst: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - Src: "net.jsign.ChannelUtils:89,1"
      Dst: "[java.nio.channels.Channel].close()"
    - Src: "net.jsign.ChannelUtils:91,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.ChannelUtils:90,1"
      Dst: "[java.io.File].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.nio.channels.WritableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:41"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:47"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:38,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:39,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:41,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.ChannelUtils:41,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.ChannelUtils:42,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:43,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:44,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:45,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.nio.channels.SeekableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.Buffer].capacity()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].position()"
    functionUses: 1
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:54"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:50,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:52,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.ChannelUtils:55,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.ChannelUtils:55,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.ChannelUtils:56,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:57,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:59,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:60,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:61,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:64,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:65,1"
      Dst: "[java.nio.Buffer].position()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.security.MessageDigest"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].capacity()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].limit()"
    functionUses: 9
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:109"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:119"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:104,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:106,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:110,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:112,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:113,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.ChannelUtils:115,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:117,1"
      Dst: "[java.nio.Buffer].limit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.nio.channels.ByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 8
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:131"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.ChannelUtils:137"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:125,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.ChannelUtils:127,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:129,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:130,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:131,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.ChannelUtils:134,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:135,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.ChannelUtils:136,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.ChannelUtils:138,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.ChannelUtils:139,1"
      Dst: "[java.io.ByteArrayOutputStream].close()"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:32,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:80,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(byte[],boolean)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.BATBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex:291,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 287
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.BATBlock"
    - "net.jsign.poi.poifs.storage.BATBlock$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex:288,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger[]"
    - "java.math.BigInteger[]"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ScaleXPointMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ScaleXPointMap:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getWrappingAlgorithmName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getKeySizeInBits(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createKeyPairGenerator(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.KeyPairGenerator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyPairGenerator(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyPairGenerator(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].or(java.math.BigInteger)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].or(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 15
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createCipher(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.crypto.Cipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createKeyAgreement(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.crypto.KeyAgreement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyAgreement(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyAgreement(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createAsymmetricWrapper(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.util.Map)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.crypto.Cipher"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSymmetricWrapper(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.crypto.Cipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createAlgorithmParameters(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.AlgorithmParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[java.security.AlgorithmParameters].init(byte[])"
    functionUses: 0
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.MessageDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 51
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.security.AlgorithmParameters].init(byte[])"
    - "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 66
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 36
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 26
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.MessageDigest].getDigestLength()"
    functionUses: 1
    ICount: 30
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.MessageDigest].getDigestLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.MessageDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 51
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createRawSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils].loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    functionUses: 1
    ICount: 27
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils].loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils].loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.AlgorithmParameters"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.security.AlgorithmParameters].init(byte[],java.lang.String)"
    - "[java.security.AlgorithmParameters].init(byte[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 211
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[],java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.util.MessageDigestUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].convertCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.X509Certificate"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCertificateFactory(java.lang.String)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCertificateFactory(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException:-1,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].convertPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyFactory(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[java.security.spec.X509EncodedKeySpec].<init>(byte[])"
    - "[java.security.KeyFactory].generatePublic(java.security.spec.KeySpec)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyFactory(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.spec.X509EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.KeyFactory].generatePublic(java.security.spec.KeySpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getKeyAlgorithmName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.MessageDigest].getDigestLength()"
    functionUses: 1
    ICount: 30
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getHashAlgorithm()"
        - "getSaltLength()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.MessageDigest].getDigestLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].getBaseGraphicString()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    functionUses: 28
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 33
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    functionUses: 24
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "toDERObject()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    functionUses: 20
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "toDLObject()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 10
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    functionUses: 15
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.AuthenticodeSignedData].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.SignerInfo)"
    functionSourceFile: "net.jsign.asn1.authenticode.AuthenticodeSignedData"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:43,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.AuthenticodeSignedData"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 110
    ICount: 25
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.AuthenticodeSignedData:57"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.AuthenticodeSignedData:61"
        BranchSideFuncs:
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
      - BranchSide: "net.jsign.asn1.authenticode.AuthenticodeSignedData:60"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:51,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:53,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:53,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:54,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:58,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedData:63,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Permission].<init>(java.lang.String)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.security.Permission].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].implies(java.security.Permission)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Permission"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Permission].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Set].containsAll(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.security.Permission].getName()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.util.Set].containsAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].equals(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.util.Set].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].hashCode()"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.util.Set].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].getActions()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission:-1,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].copyTo(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter].reverse()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverse(byte[],byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverse(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverse(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.Holder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 3
    ICount: 60
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 32
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
        - "getInstance(java.lang.Object)"
        - "convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
        - "getInstance(java.lang.Object)"
        - "convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
        - "getInstance(java.lang.Object)"
        - "convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].convert(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.DERSequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSequence].toDERObject()"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].fromContents(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].isParsed()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isParsed()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].toASN1Primitive()"
    functionUses: 1
    ICount: 19
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "fromContents(byte[])"
        - "hasContextTag()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "isParsed()"
        - "getInstance(java.lang.Object)"
        - "getBaseObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "fromContents(byte[])"
        - "hasContextTag()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "isParsed()"
        - "getInstance(java.lang.Object)"
        - "getBaseObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "fromContents(byte[])"
        - "hasContextTag()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "isParsed()"
        - "getInstance(java.lang.Object)"
        - "getBaseObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "fromContents(byte[])"
        - "hasContextTag()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "isParsed()"
        - "getInstance(java.lang.Object)"
        - "getBaseObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isParsed()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].fromContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].fromContents(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "createPrimitive(byte[],boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    functionUses: 1
    ICount: 38
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 39
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.V2Form"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    functionUses: 1
    ICount: 49
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.V2Form"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 2
    ICount: 8
    EdgeCount: 106
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "net.jsign.bouncycastle.asn1.x509.V2Form"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 42
    EdgeCount: 107
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean:net.jsign.bouncycastle.asn1.ASN1Sequence].isTrue()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 36
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "isTrue()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "isTrue()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 35
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.DERBitString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.DERBitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].getFactor()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].isProvablyComposite()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].isNotPrimePower()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].access$100(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$MROutput].access$200()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Set$2].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Set$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Set$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Set$2].hasMoreElements()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Set$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Set$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Set$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Set$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 41
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Set$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Set$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Set$2:-1,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getOctetStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedOctetStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedOctetStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BEROctetString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedOctetStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedOctetStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 101
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BEROctetString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].isPredictionResistant()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    functionUses: 5
    ICount: 37
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "addTask(java.lang.Runnable)"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.EntropyGatherer:-2"
        BranchSideFuncs:
        - "getPropertyValue(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].entropySize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].getUnderlyingException()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3].readObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].parser()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].parser()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].parser()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].parser()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 101
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 11
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger)"
        - "<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger)"
        - "<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger)"
        - "<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-2"
        BranchSideFuncs:
        - "<init>(java.math.BigInteger)"
        - "<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 2
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getTagClass()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getTagNo()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].hasContextTag()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].hasContextTag(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].hasTag(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].hasTagClass(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[java.io.InputStream].read()"
    - "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 9
    ICount: 24
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 61
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].setEofOn00(boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "setEofOn00(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].setEofOn00(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].setEofOn00(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 37
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "<init>(java.io.InputStream,int)"
        - "checkForEof()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequenceParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequenceParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "<init>(java.io.InputStream,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "<init>(java.io.InputStream,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    functionUses: 1
    ICount: 26
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(char[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBMPCharBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 2
    ICount: 104
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBMPCharBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(char[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1PrintableString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 4
    ICount: 14
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBMPCharBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 1
    ICount: 95
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "getRemaining()"
        - "readFully(java.io.InputStream,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].readAllIntoByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "readAllIntoByteArray(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "readAllIntoByteArray(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].readAllIntoByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].readAllIntoByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 46
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "<init>(byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 33
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(byte[],boolean)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].<init>(byte[],java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].<init>(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].isDigit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].isDigit(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DLSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSetParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequenceParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequenceParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].parseBaseUniversal(boolean,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseObject(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseObject(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseObject(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.InputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 61
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].parseExplicitBaseObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    functionUses: 2
    ICount: 7
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "read()"
        - "implParseObject(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 61
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 21
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].parseExplicitBaseTagged()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObjectParser"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseTaggedObject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseTaggedObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseTaggedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObjectParser"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 61
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "set00Check(boolean)"
        - "parseImplicitConstructedDL(int)"
        - "<init>(java.io.InputStream,int,int)"
        - "readTagNumber(java.io.InputStream,int)"
        - "getLimit()"
        - "parseImplicitConstructedIL(int)"
        - "<init>(java.io.InputStream,int)"
        - "parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "readLength(java.io.InputStream,int,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].set00Check(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedIL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitPrimitive(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].<init>(int,int,boolean,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].parseImplicitConstructedDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 21
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].parseImplicitBaseTagged(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObjectParser"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 101
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObjectParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String,java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createCompParams(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createCompParams(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setSecureRandom(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.operator.ContentSigner"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoded()"
    - "[net.jsign.jca.SigningServicePrivateKey].getEncoded()"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.security.Key].getEncoded()"
    - "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - "[java.security.Signature].initSign(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 50
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.operator.ContentSigner"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.CompositePrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.List].get(int)"
    - "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - "[java.security.Signature].initSign(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 56
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.security.AlgorithmParameters].init(byte[])"
    - "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.OutputStreamFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].<init>(java.security.Signature)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.OutputStreamFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].<init>(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].<init>(java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    - "java.io.OutputStream"
    - "java.security.Signature[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 43
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "intValueExact()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 2
    ICount: 37
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    - "java.security.Signature"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.operator.ContentSigner"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.CompositePrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.List].get(int)"
    - "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - "[java.security.Signature].initSign(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 56
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getObjectAt(int)"
        - "getPrivateKeys()"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
        - "createStream(java.security.Signature)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getPrivateKeys()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.io.OutputStream,java.security.Signature[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 1
    argTypes:
    - "java.security.spec.PSSParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[java.security.spec.PSSParameterSpec].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.security.spec.PSSParameterSpec].getMGFParameters()"
    - "[java.security.spec.MGF1ParameterSpec].getDigestAlgorithm()"
    - "[java.security.spec.PSSParameterSpec].getSaltLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[java.security.spec.PSSParameterSpec].getTrailerField()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getMGFParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.MGF1ParameterSpec].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getSaltLength()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getTrailerField()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createCompParams(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getAlgorithmNames()"
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getParameterSpecs()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getAlgorithmNames()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getParameterSpecs()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getAlgorithmNames()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].getParameterSpecs()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].createPSSParams(java.security.spec.PSSParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 1
    argTypes:
    - "java.security.spec.PSSParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[java.security.spec.PSSParameterSpec].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.security.spec.PSSParameterSpec].getMGFParameters()"
    - "[java.security.spec.MGF1ParameterSpec].getDigestAlgorithm()"
    - "[java.security.spec.PSSParameterSpec].getSaltLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[java.security.spec.PSSParameterSpec].getTrailerField()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getMGFParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.MGF1ParameterSpec].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getSaltLength()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.spec.PSSParameterSpec].getTrailerField()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$add__14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$add__14:-1,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$add__14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$add__14:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$add__14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$add__14:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$add__14].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$add__14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger$BoundedQueue].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$add__14:-1,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].<init>(net.jsign.bouncycastle.crypto.params.SkeinParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.SkeinParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters].access$000(net.jsign.bouncycastle.crypto.params.SkeinParameters)"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters].access$000(net.jsign.bouncycastle.crypto.params.SkeinParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setPersonalisation(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setPersonalisation(java.util.Date,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 3
    argTypes:
    - "java.util.Date"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.OutputStreamWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setPersonalisation(java.util.Date,java.util.Locale,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 4
    argTypes:
    - "java.util.Date"
    - "java.util.Locale"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.OutputStreamWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setPublicKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setKeyIdentifier(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].setNonce(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].set(int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder].build()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.SkeinParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable,net.jsign.bouncycastle.crypto.params.SkeinParameters$1)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable,net.jsign.bouncycastle.crypto.params.SkeinParameters$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable,net.jsign.bouncycastle.crypto.params.SkeinParameters$1)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Hashtable"
    - "net.jsign.bouncycastle.crypto.params.SkeinParameters$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.SkeinParameters].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.SkeinParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.SkeinParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:40,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:42,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:43,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:44,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:45,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:58,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].shouldUseSmallBlocks()"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].shouldUseSmallBlocks()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:91,1"
      Dst: "[net.jsign.poi.poifs.property.Property].shouldUseSmallBlocks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].preWrite()"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:117,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus,net.jsign.bouncycastle.asn1.ocsp.ResponseBytes)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    - "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Enumerated)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Enumerated)"
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Enumerated)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Enumerated)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Enumerated)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseBytes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ocsp.ResponseBytes"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException].getCause()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding].init(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding].getPaddingName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding].addPadding(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding].padCount(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.modes.GCMModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createGCM()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createGCM()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.modes.GCMModeCipher"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASH(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters:net.jsign.bouncycastle.crypto.params.KeyParameter].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].init(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].init(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 147
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "getParameters()"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "init(byte[])"
        - "clone(byte[])"
        - "gHASH(byte[],byte[],int)"
        - "processAADBytes(byte[],int,int)"
        - "areEqual(byte[],byte[])"
        - "getAssociatedText()"
        - "getMacSize()"
        - "getKey()"
        - "getNonce()"
        - "longToBigEndian(long,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].init(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASH(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASH(byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 45
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "checkStatus()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 45
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.RuntimeCryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.RuntimeCryptoException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 53
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 116
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].<init>()"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].exponentiateX(long,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].init(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiply(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processPartial(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMExponentiator].init(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMExponentiator].exponentiateX(long,byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 124
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "processBlock(byte[],int,byte[],int)"
        - "xor(byte[],byte[])"
        - "init(byte[])"
        - "processPartial(byte[],int,int,byte[],int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "exponentiateX(long,byte[])"
        - "<init>()"
        - "initCipher()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "multiply(byte[],byte[])"
        - "checkStatus()"
        - "reset(boolean)"
        - "longToBigEndian(long,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processPartial(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMExponentiator].init(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMExponentiator].exponentiateX(long,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiply(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 24
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processPartial(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "xor(byte[],int,byte[],int,int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "getNextCTRBlock(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 53
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 1
    ICount: 39
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 45
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHBlock(byte[],byte[])"
        - "gHASHBlock(byte[],byte[],int)"
        - "checkStatus()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 1
    ICount: 39
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 1
    ICount: 39
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
        - "clone(byte[])"
        - "processAADBytes(byte[],int,int)"
        - "fill(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].initCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processPartial(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "xor(byte[],int,byte[],int,int)"
        - "gHASHPartial(byte[],byte[],int,int)"
        - "getNextCTRBlock(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASH(byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "gHASHPartial(byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHBlock(byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].gHASHPartial(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].multiplyH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier].multiplyH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].getNextCTRBlock(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 53
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.input.QueueInputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:138,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - Src: "net.jsign.commons.io.input.QueueInputStream$Builder:84,1"
      Dst: "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:149,1"
      Dst: "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:149,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:160,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    - "java.time.Duration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.Duration].toNanos()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:169,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:170,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.input.QueueInputStream:171,1"
      Dst: "[java.time.Duration].toNanos()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].getBlockingQueue()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.concurrent.BlockingQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].getTimeout()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.time.Duration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.Duration].ofNanos(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:189,1"
      Dst: "[java.time.Duration].ofNanos(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].newQueueOutputStream()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.QueueOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.QueueOutputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:198,1"
      Dst: "[net.jsign.commons.io.output.QueueOutputStream].<init>(java.util.concurrent.BlockingQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.QueueOutputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionSourceFile: "net.jsign.commons.io.output.QueueOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.QueueOutputStream:72,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.QueueOutputStream:73,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].read()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 29
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.QueueInputStream:211"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.QueueInputStream:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.QueueInputStream:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:210,1"
      Dst: "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - Src: "net.jsign.commons.io.input.QueueInputStream:211,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:213,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:213,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:216,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration,net.jsign.commons.io.input.QueueInputStream$1)"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    - "java.time.Duration"
    - "net.jsign.commons.io.input.QueueInputStream$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:62,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].<init>()"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.StringBuilders:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendDqValue(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:59,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendKeyDqValue(java.lang.StringBuilder,java.util.Map$Entry)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.log4j.util.StringBuilders].appendKeyDqValue(java.lang.StringBuilder,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:70,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.util.StringBuilders:70,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:70,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendKeyDqValue(java.lang.StringBuilder,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendKeyDqValue(java.lang.StringBuilder,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendKeyDqValue(java.lang.StringBuilder,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendValue(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:93"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:96"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:93,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.SimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.Character].charValue()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Short].shortValue()"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 78
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:101"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:103"
        BranchSideFuncs:
        - "formatTo(java.lang.StringBuilder)"
      - BranchSide: "net.jsign.log4j.util.StringBuilders:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:105"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:107"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:111"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:113"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:119"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:118"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:120"
        BranchSideFuncs:
        - "isDate(java.lang.Object)"
        - "isTime(java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.StringBuilders:102,1"
      Dst: "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.util.StringBuilders:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.Character].charValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:116,1"
      Dst: "[java.lang.Short].shortValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "net.jsign.log4j.util.StringBuilders:120,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 29
  - functionName: "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:133,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.util.StringBuilders:133,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:139"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:140,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.util.StringBuilders:140,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.SimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.Character].charValue()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Short].shortValue()"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 78
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:101"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:103"
        BranchSideFuncs:
        - "formatTo(java.lang.StringBuilder)"
      - BranchSide: "net.jsign.log4j.util.StringBuilders:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:105"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:107"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:111"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:113"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:119"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:118"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:120"
        BranchSideFuncs:
        - "isDate(java.lang.Object)"
        - "isTime(java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.StringBuilders:102,1"
      Dst: "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.util.StringBuilders:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.Character].charValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:116,1"
      Dst: "[java.lang.Short].shortValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "net.jsign.log4j.util.StringBuilders:120,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 29
  - functionName: "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:133,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.util.StringBuilders:133,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:139"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:140,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.util.StringBuilders:140,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.StringBuilders].equals(java.lang.CharSequence,int,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:157"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:165"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:164"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:158"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:163"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:159"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:158"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:159,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.StringBuilders].equalsIgnoreCase(java.lang.CharSequence,int,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Character].toLowerCase(char)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:190"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:189"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:183"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:188"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:184"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:183"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:184,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:184,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.StringBuilders].trimToMaxSize(java.lang.StringBuilder,int)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].capacity()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].trimToSize()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:202"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:202"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:202,1"
      Dst: "[java.lang.StringBuilder].capacity()"
    - Src: "net.jsign.log4j.util.StringBuilders:203,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:204,1"
      Dst: "[java.lang.StringBuilder].trimToSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StringBuilders].escapeJson(java.lang.StringBuilder,int)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.Character].isISOControl(char)"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[net.jsign.log4j.util.StringBuilders].escapeAndDecrement(java.lang.StringBuilder,int,char)"
    - "[net.jsign.log4j.util.Chars].getUpperCaseHex(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:210"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:223"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:209"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:208"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:233"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:276"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:275"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:262"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:210,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.log4j.util.StringBuilders:211,1"
      Dst: "[java.lang.StringBuilder].charAt(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:223,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:230,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:237,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].escapeAndDecrement(java.lang.StringBuilder,int,char)"
    - Src: "net.jsign.log4j.util.StringBuilders:264,1"
      Dst: "[net.jsign.log4j.util.Chars].getUpperCaseHex(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:264,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 21
  - functionName: "[net.jsign.log4j.util.StringBuilders].escapeAndDecrement(java.lang.StringBuilder,int,char)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:279,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Chars].getUpperCaseHex(int)"
    functionSourceFile: "net.jsign.log4j.util.Chars"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Chars].getNumericalDigit(int)"
    - "[net.jsign.log4j.util.Chars].getUpperCaseAlphaDigit(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Chars:55"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Chars:56"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Chars:55"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Chars:55"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Chars:58"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Chars:57"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Chars:58"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Chars:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Chars:58,1"
      Dst: "[net.jsign.log4j.util.Chars].getNumericalDigit(int)"
    - Src: "net.jsign.log4j.util.Chars:58,1"
      Dst: "[net.jsign.log4j.util.Chars].getUpperCaseAlphaDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.Chars].getNumericalDigit(int)"
    functionSourceFile: "net.jsign.log4j.util.Chars"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Chars].getUpperCaseAlphaDigit(int)"
    functionSourceFile: "net.jsign.log4j.util.Chars"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].escapeAndDecrement(java.lang.StringBuilder,int,char)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:279,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StringBuilders].escapeXml(java.lang.StringBuilder,int)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    functionUses: 0
    ICount: 116
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:286"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:302"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:301"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:306"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:348"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:286,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.log4j.util.StringBuilders:287,1"
      Dst: "[java.lang.StringBuilder].charAt(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:303,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:310,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CTRModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCTR()"
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "createCTR()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 2
    ICount: 18
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 2
    ICount: 18
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 21
    ICount: 57
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 13
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 13
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBytes(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 55
    ICount: 45
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "processBytes(byte[],int,int,byte[],int)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "processBytes(byte[],int,int,byte[],int)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "processBytes(byte[],int,int,byte[],int)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "processBytes(byte[],int,int,byte[],int)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBytes(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 57
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 57
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].calculateByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "checkLastIncrement()"
        - "processBlock(byte[],int,byte[],int)"
        - "incrementCounter()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkLastIncrement()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 13
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].skip(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounterAt(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].incrementCounter(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].decrementCounterAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].seekTo(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].skip(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].skip(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 13
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].skip(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].adjustCounter(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].checkCounter()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getPosition()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToLong(byte[],int)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].<init>(java.lang.String,int,net.jsign.bouncycastle.crypto.CipherKeyGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.KeyGeneratorSpi].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[javax.crypto.KeyGeneratorSpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].engineInit(java.security.spec.AlgorithmParameterSpec,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].engineInit(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.SecureRandom"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.Object"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].engineInit(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.security.InvalidParameterException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[java.security.InvalidParameterException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].engineGenerateKey()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "javax.crypto.SecretKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    - "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].generateKey()"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].generateKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].<init>(java.security.SecureRandom,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.KeyGenerationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].generateKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].add(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].addOne(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].addTo(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].halfTrace(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat448].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].copy64(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].invert(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].isZero64(long[])"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].multiply(long[],long[],long[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].squareN(long[],int,long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "create64(int)"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 12
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 225
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].multiply(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 225
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 225
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].reduce39(long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].sqrt(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].square(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].squareAddToExt(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].squareN(long[],int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 76
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].trace(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    functionUses: 0
    ICount: 225
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field].implSquare(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 5
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8:-1,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8:-1,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448withSHA512CKDF].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448withSHA512CKDF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].<init>(java.net.URL)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$600(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    functionUses: 110
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 113
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCTR()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCFB()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCBC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeAES()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCM()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMSIV()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCCM()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCCMPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCBCPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCFBPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCTRPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMSIVPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeRand()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSeed()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA256()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA224()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA384()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA512()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeMulAcc()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA3()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHAKE()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRSA()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].<init>(boolean)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "net.jsign.log4j.spi.MutableThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:49"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:47"
        BranchSideFuncs:
        - "<init>()"
        - "copy()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:48,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:45,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(java.util.List)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:53,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.MutableThreadContextStack"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:57,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:54"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:56"
        BranchSideFuncs:
        - "getNonNullStackCopy()"
        - "add(java.lang.String)"
        - "freeze()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:57,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:58,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:59,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:60,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "net.jsign.log4j.spi.MutableThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:49"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:47"
        BranchSideFuncs:
        - "<init>()"
        - "copy()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:48,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:163,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:164,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].addAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].addAll(java.util.Collection)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:66"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:66"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:66,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:69,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:70,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].addAll(java.util.Collection)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:71,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:72,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "net.jsign.log4j.spi.MutableThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:49"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:47"
        BranchSideFuncs:
        - "<init>()"
        - "copy()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:48,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:49,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].addAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:180,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:181,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].asList()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].asList()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:79"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:81"
        BranchSideFuncs:
        - "asList()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:78,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:80,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:82,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].asList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].asList()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].clear()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].remove()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:87,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].contains(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].contains(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:93"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:93"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:92,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:93,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].contains(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:143,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].containsAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].containsAll(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:98"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:102"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:101"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:101"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:98,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:102,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:103,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].containsAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].containsAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].containsAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:175,1"
      Dst: "[java.util.List].containsAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:112"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:109,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:110,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:112,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:45,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 5
    ICount: 24
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:120"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:123"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:122"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:123"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:125"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:129"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:132"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:136"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:133,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:137,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 219
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].asList()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].asList()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].asList()"
    - "[net.jsign.log4j.ThreadContext$ContextStack].asList()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:220"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:223"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:226"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:225"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:228"
        BranchSideFuncs:
        - "asList()"
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:230,1"
      Dst: "[net.jsign.log4j.ThreadContext$ContextStack].asList()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:231,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].getDepth()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].getDepth()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:142,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:143,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].getDepth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].getDepth()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:94,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].hashCode()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:152"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:148"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:147"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:148,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:152,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].hashCode(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:215,1"
      Dst: "[java.util.Objects].hashCode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:159"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:157"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:159"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:157"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:158,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:159,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Collections].emptyList()"
    - "[java.util.List].iterator()"
    functionUses: 42
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:168"
        BranchSideFuncs:
        - "iterator()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:164,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:166,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:167,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:169,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    functionUses: 43
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:148,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].peek()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].peek()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:175"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:176"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:175"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:178"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:174,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:175,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:178,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].peek()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:79"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:79,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:82,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:83,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].pop()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].pop()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:183"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:187"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:188"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:187"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:186,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:187,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:191,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:192,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].pop()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:193,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:194,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].pop()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].remove(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:69"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:68,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:69,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:72,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:73,1"
      Dst: "[java.util.List].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].push(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:200"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:203"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:203,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:54"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:56"
        BranchSideFuncs:
        - "getNonNullStackCopy()"
        - "add(java.lang.String)"
        - "freeze()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:57,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:58,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:59,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:60,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].remove(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].remove(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:208"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:211"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:210"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:212"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:212"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:212"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:215"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:211,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:212,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:215,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:216,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].remove(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:217,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:218,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].remove(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:169,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:170,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].removeAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].removeAll(java.util.Collection)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:224"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:225"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:224"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:224"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:228"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:228"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:231"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:224,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:227,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:228,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:231,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:232,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].removeAll(java.util.Collection)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:233,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:234,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].removeAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.util.List].removeAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:186,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:187,1"
      Dst: "[java.util.List].removeAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].retainAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].retainAll(java.util.Collection)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:240"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:241"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:240"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:240"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:243"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:242"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:244"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:245"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:244"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:244"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:247"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:240,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:243,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:244,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:247,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:248,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].retainAll(java.util.Collection)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:249,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:250,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:138,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].retainAll(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.util.List].retainAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:192,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:193,1"
      Dst: "[java.util.List].retainAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 7
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:257"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:255"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:256,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:257,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:133,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].toArray()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:263"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:266"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:262,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:266,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:158,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].toArray(java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:272"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:278"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:277"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:273"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:276"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:271,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:278,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].toArray(java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:158,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].toString()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 282
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].toString()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:284"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:282"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:283,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:284,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].toString()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:198,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].formatTo(java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StringBuilders].appendValue(java.lang.StringBuilder,java.lang.Object)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:290"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:292"
        BranchSideFuncs:
        - "appendValue(java.lang.StringBuilder,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:289,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:291,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:293,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendValue(java.lang.StringBuilder,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendValue(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:93"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:96"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:93,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].trim(int)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].trim(int)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:299"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:302"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:301"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:303"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:306"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:300,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:302,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:306,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:307,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].trim(int)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:308,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:309,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].copy()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ThreadContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:122,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].<init>(net.jsign.log4j.spi.MutableThreadContextStack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].trim(int)"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].clear()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:105"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:108"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:108"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:113"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:104,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:106,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:111,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:111,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:112,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:114,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:114,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:116,1"
      Dst: "[java.util.List].clear()"
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:117,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].checkInvariants()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.MutableThreadContextStack:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.MutableThreadContextStack:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MutableThreadContextStack:62,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    functionSourceFile: "net.jsign.log4j.spi.MutableThreadContextStack"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].getImmutableStackOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.ThreadContext$ContextStack"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:319,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:33,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextStack"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextStack:54"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextStack:56"
        BranchSideFuncs:
        - "getNonNullStackCopy()"
        - "add(java.lang.String)"
        - "freeze()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:57,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextStack].getNonNullStackCopy()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:58,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.String)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:59,1"
      Dst: "[net.jsign.log4j.spi.MutableThreadContextStack].freeze()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextStack:60,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 196
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 30
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 196
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].getDLSubStream()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 35
    ICount: 43
    EdgeCount: 311
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
        - "writeDL(int)"
        - "getDLSubStream()"
        - "writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
        - "writeDL(int)"
        - "getDLSubStream()"
        - "writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
        - "writeDL(int)"
        - "getDLSubStream()"
        - "writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
        - "writeDL(int)"
        - "getDLSubStream()"
        - "writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
        - "writeDL(int)"
        - "getDLSubStream()"
        - "writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.DLOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].getContentsLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 196
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 74
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1BitString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitString].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedBitStrings()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedBitStrings()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1External"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DLSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1OctetString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedOctetStrings()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedOctetStrings()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1Set()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB$1].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.jcajce.provider.symmetric.util.BlockCipherProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB$1].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$ECB:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.jcajce.provider.symmetric.util.BlockCipherProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getDouble(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:59,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - Src: "net.jsign.poi.util.LittleEndian:59,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getDouble(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:74,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - Src: "net.jsign.poi.util.LittleEndian:74,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getFloat(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "float"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getFloat(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:87,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getFloat(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getFloat(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "float"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - "[java.lang.Float].intBitsToFloat(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:102,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - Src: "net.jsign.poi.util.LittleEndian:102,1"
      Dst: "[java.lang.Float].intBitsToFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getFloat(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "float"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - "[java.lang.Float].intBitsToFloat(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:102,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - Src: "net.jsign.poi.util.LittleEndian:102,1"
      Dst: "[java.lang.Float].intBitsToFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:113,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:142,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getShort(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:173,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getShortArray(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:205"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:207,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getShort(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUByte(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUByte(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUInt(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getUInt(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:244,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getUInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:257,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:257,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUShort(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getUShort(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:269,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getUShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUShort(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getUShort(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putByte(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putDouble(byte[],int,double)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    - "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:311,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    - Src: "net.jsign.poi.util.LittleEndian:311,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putDouble(double,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    - "[net.jsign.poi.util.LittleEndian].putLong(long,java.io.OutputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:325,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    - Src: "net.jsign.poi.util.LittleEndian:325,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putLong(long,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putLong(long,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:424,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putFloat(byte[],int,float)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToIntBits(float)"
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:339,1"
      Dst: "[java.lang.Float].floatToIntBits(float)"
    - Src: "net.jsign.poi.util.LittleEndian:339,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putFloat(float,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "float"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToIntBits(float)"
    - "[net.jsign.poi.util.LittleEndian].putInt(int,java.io.OutputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:354,1"
      Dst: "[java.lang.Float].floatToIntBits(float)"
    - Src: "net.jsign.poi.util.LittleEndian:354,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(int,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:386,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:386,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putLong(long,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:424,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 445
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putShort(java.io.OutputStream,short)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:461,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putShortArray(byte[],int,short[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:477"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:481"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:479,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 445
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putUByte(byte[],int,short)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putUInt(byte[],int,long)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putUInt(long,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:533,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putUShort(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putUShort(int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:569,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readInt(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:589"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:592"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:585,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.LittleEndian:591,1"
      Dst: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionSourceFile: "net.jsign.poi.util.LittleEndian$BufferUnderrunException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian$BufferUnderrunException:45,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readUInt(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].readInt(java.io.InputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:608,1"
      Dst: "[net.jsign.poi.util.LittleEndian].readInt(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readInt(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:589"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:592"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:585,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.LittleEndian:591,1"
      Dst: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LittleEndian].readLong(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:632"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:636"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.LittleEndian:635"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:624,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.LittleEndian:633,1"
      Dst: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionSourceFile: "net.jsign.poi.util.LittleEndian$BufferUnderrunException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian$BufferUnderrunException:45,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readShort(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].readUShort(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:655,1"
      Dst: "[net.jsign.poi.util.LittleEndian].readUShort(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readUShort(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:661"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:664"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.LittleEndian:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:659,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.LittleEndian:662,1"
      Dst: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionSourceFile: "net.jsign.poi.util.LittleEndian$BufferUnderrunException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian$BufferUnderrunException:45,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].readUShort(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read()"
    - "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:661"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:664"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.LittleEndian:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:659,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.LittleEndian:662,1"
      Dst: "[net.jsign.poi.util.LittleEndian$BufferUnderrunException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LittleEndian].ubyteToInt(byte)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].<init>()"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: -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.jsign.poi.util.LittleEndian:679,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 1
    ICount: 112
    EdgeCount: 38
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$AtomicBooleanWriter:225,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:229"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:232,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:233,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:237,1"
      Dst: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:246,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:246,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicBooleanWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:246,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicBooleanWriter:246,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].convert(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.DERSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSet].checkSorted(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].checkSorted(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].getContentsLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 28
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].getDERSubStream()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 33
    ICount: 50
    EdgeCount: 481
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "getDERSubStream()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "getDERSubStream()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "getDERSubStream()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "getDERSubStream()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "getContentsLength()"
        - "getDERSubStream()"
        - "writeIdentifier(boolean,int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.DEROutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].getContentsLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    functionUses: 28
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs:
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDLObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].checkSorted(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$Disposer].<init>(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AntConsole].<init>(org.apache.tools.ant.Task)"
    functionSourceFile: "net.jsign.AntConsole"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.apache.tools.ant.Task"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AntConsole:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AntConsole].debug(java.lang.String)"
    functionSourceFile: "net.jsign.AntConsole"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AntConsole:37,1"
      Dst: "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AntConsole].info(java.lang.String)"
    functionSourceFile: "net.jsign.AntConsole"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AntConsole:41,1"
      Dst: "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AntConsole].warn(java.lang.String)"
    functionSourceFile: "net.jsign.AntConsole"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AntConsole:45,1"
      Dst: "[org.apache.tools.ant.Task].log(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AntConsole].warn(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.AntConsole"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.tools.ant.Task].log(java.lang.String,java.lang.Throwable,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AntConsole:49,1"
      Dst: "[org.apache.tools.ant.Task].log(java.lang.String,java.lang.Throwable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA256KDF].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA256KDF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256()"
    - "[net.jsign.bouncycastle.crypto.generators.KDF2BytesGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA256KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA256KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.KDF2BytesGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA256KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERPrintableString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERPrintableString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERPrintableString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERPrintableString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERPrintableString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(byte[],boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERPrintableString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].<init>(java.io.InputStream)"
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 37
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength(java.io.InputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DLFactory].createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DLFactory].createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 57
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "toASN1External()"
        - "buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,int)"
        - "<init>(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "toASN1External()"
        - "buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,int)"
        - "<init>(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "toASN1External()"
        - "buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,int)"
        - "<init>(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "toASN1External()"
        - "buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,int)"
        - "<init>(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "toASN1External()"
        - "buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "<init>(java.io.InputStream,int,int)"
        - "<init>(byte[])"
        - "getRemaining()"
        - "toByteArray()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLFactory].createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLFactory].createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "<init>(java.io.InputStream,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "<init>(java.io.InputStream,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].createPrimitiveDERObject(int,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(char[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBMPCharBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 2
    ICount: 104
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBMPCharBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(char[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getBuffer(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1PrintableString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTaggedObjectDL(int,int,boolean,net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedDL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createPrimitive(int,int,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
        - "createConstructedDL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "toByteArray()"
        - "createPrimitive(int,int,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createPrimitive(int,int,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedDL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "getRemaining()"
        - "readVector()"
        - "<init>(java.io.InputStream,int,boolean,byte[][])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "readObject()"
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "readObject()"
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedBitString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildConstructedOctetString(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DLFactory].createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.DLSequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLFactory:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLFactory].createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.DLSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLFactory:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1External"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    - "[java.io.EOFException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "<init>(java.io.InputStream,int)"
        - "checkForEof()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].checkForEof()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].createConstructedIL(int,int,net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedBitStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BEROctetString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.DLExternal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 3
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[java.io.InputStream].read()"
    - "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 9
    ICount: 24
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DLSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequenceParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.BERSequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequenceParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequenceParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.BERSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object,int)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    functionUses: 1
    ICount: 41
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "isExplicit()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object,int)"
        - "getExplicitBaseObject()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object,int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset(long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].initSponge(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].initSponge(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].initSponge(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "fill(byte[],byte)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "fill(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getDigestSize()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicePurpose:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 30
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getDigestSize()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "absorbBits(int,int)"
        - "squeeze(byte[],int,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 1
    ICount: 56
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "littleEndianToLong(byte[],int)"
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "littleEndianToLong(byte[],int)"
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "littleEndianToLong(byte[],int)"
        - "KeccakAbsorb(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakPermutation()"
        - "littleEndianToLong(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 281
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    - "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[],int,int,byte[],int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].initSponge(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].initSponge(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "absorbBits(int,int)"
        - "squeeze(byte[],int,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,byte,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakPermutation()"
        - "littleEndianToLong(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakPermutation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "KeccakAbsorb(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakAbsorb(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-2"
        BranchSideFuncs:
        - "padAndSwitchToSqueezingPhase()"
        - "KeccakExtract()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].padAndSwitchToSqueezingPhase()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].KeccakExtract()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 2
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].getEncodedState()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].copy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 27
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 8
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce63(long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    functionUses: 8
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 1
    ICount: 23
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "getBlockSize()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 5
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 2
    ICount: 13
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 10
    ICount: 17
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 11
    ICount: 37
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.paddings.X923Padding].addPadding(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.paddings.ISO10126d2Padding].addPadding(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher:net.jsign.bouncycastle.crypto.paddings.ISO7816d4Padding:net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:net.jsign.bouncycastle.crypto.paddings.TBCPadding:net.jsign.bouncycastle.crypto.paddings.ZeroBytePadding].addPadding(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 7
    ICount: 37
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "addPadding(byte[],int)"
        - "reset()"
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "addPadding(byte[],int)"
        - "reset()"
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "addPadding(byte[],int)"
        - "reset()"
        - "getBlockSize()"
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 2
    ICount: 13
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 2
    ICount: 13
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$1)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].<init>(java.util.Enumeration)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$1)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].<init>(java.util.Enumeration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$1)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.TBSCertList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].<init>(java.util.Enumeration)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Enumeration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getVersionNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getVersionNumber()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getVersionNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getVersionNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getThisUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getThisUpdate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getThisUpdate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getThisUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getNextUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getNextUpdate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getNextUpdate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getNextUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.PIVCard$KeyInfo].<init>()"
    functionSourceFile: "net.jsign.jca.PIVCard$KeyInfo"
    linkageType: null
    functionLinenumber: -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.jsign.jca.PIVCard$KeyInfo:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].getInstance(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].negate()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].negate()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].multiply(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].multiply(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].divide(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].divide(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].divide(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].divide(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].divide(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].divide(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].shiftLeft(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].compareTo(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].compareTo(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].round()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].intValue()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - "[java.math.BigInteger].intValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].longValue()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - "[java.math.BigInteger].longValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].getScale()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].toString()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - "[java.math.BigInteger].toString()"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].toString(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].<init>(char[])"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 4
    ICount: 56
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs:
        - "floor()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].toString()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].toString(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 5
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$LongPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].longCounter()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$LongPathCounters:298,1"
      Dst: "[net.jsign.commons.io.file.Counters].longCounter()"
    - Src: "net.jsign.commons.io.file.Counters$LongPathCounters:298,1"
      Dst: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.property.RootProperty"
    - "java.util.List"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:47"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:50"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:49"
        BranchSideFuncs:
        - "getStartBlock()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:46,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:48,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].slice()"
    - "[java.nio.ByteBuffer].limit(int)"
    functionUses: 2
    ICount: 33
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:69"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:72"
        BranchSideFuncs:
        - "getBlockAt(int)"
        - "next()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:64,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:68,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:70,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:73,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:73,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:78,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:80,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:81,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 939
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:940,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:104"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:101,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[java.lang.Object].<init>()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator:156,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator:159,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator:159,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator:161,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].createBlockIfNeeded(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 5
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockAt(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].createBlockIfNeeded(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:90"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:94"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:95"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:106"
        BranchSideFuncs:
        - "getFreeBlock()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:111"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:116"
        BranchSideFuncs:
        - "_get_property_table()"
        - "getRoot()"
        - "setStartBlock(int)"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:115"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getChainLoopDetector()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:97,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:107,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:112,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:112,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:112,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:113,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:116,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:119,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:120,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:126,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:133,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].createBlockIfNeeded(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].slice()"
    - "[java.nio.ByteBuffer].limit(int)"
    functionUses: 2
    ICount: 33
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:69"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:72"
        BranchSideFuncs:
        - "getBlockAt(int)"
        - "next()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:64,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:68,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:70,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:73,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:73,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:74,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:78,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:77,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:80,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:81,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 536
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 104
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:544"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:554"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:546"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:543"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:604"
        BranchSideFuncs:
        - "getBATCount()"
        - "setBATArray(int[])"
        - "getBATArray()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:567"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "hasFreeSectors()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:568"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:571"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588"
        BranchSideFuncs:
        - "setXBATStart(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:587"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:603"
        BranchSideFuncs:
        - "getValueAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:597"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
        BranchSideFuncs:
        - "setValueAt(int,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:537,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:545,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:560,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:561,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:586,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:589,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:593,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:608,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:610,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:217"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 3
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.Math].multiplyExact(long,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452"
        BranchSideFuncs:
        - "getBigBlockSize()"
        - "createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
        - "setOurBlockIndex(int)"
        - "write(java.nio.ByteBuffer,long)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:451"
        BranchSideFuncs:
        - "createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:453,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:455,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:455,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:457,1"
      Dst: "[java.lang.Math].multiplyExact(long,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:458,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:111"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:115"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:110,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:112,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:67,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:71,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.common.POIFSBigBlockSize:59,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    functionUses: 7
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:231"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:235"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:238"
        BranchSideFuncs:
        - "recomputeFree()"
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:236,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:76"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:81"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:77"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:75"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:74"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 347
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:300"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:298,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:301,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:315"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:318"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:319"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:311,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:316,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 486
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    functionUses: 2
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:487,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:490,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:492,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:492,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:493,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 939
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:940,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 629
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 621
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.DataSource].size()"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getBlockStoreBlockSize()"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:88"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:91"
        BranchSideFuncs:
        - "getBlockStoreBlockSize()"
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:94"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:97"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:92,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 10
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:108"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:515,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 3
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:505,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 153
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:154,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:155,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:159,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:159,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 287
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.BATBlock"
    - "net.jsign.poi.poifs.storage.BATBlock$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex:288,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.BATBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex:291,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:524,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:526,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:141,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 3
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:169,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 153
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:154,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:155,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:159,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:159,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].<init>(int,net.jsign.poi.poifs.storage.BATBlock,net.jsign.poi.poifs.storage.BATBlock$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:150,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:151,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:151,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:151,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:141,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:217"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionUses: 4
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:158,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:159,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:160,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:159,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBATBlockAndIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:141,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getSBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    functionUses: 7
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:231"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:235"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:238"
        BranchSideFuncs:
        - "recomputeFree()"
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:236,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getFreeBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATStart(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATBlockCount(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 63
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:174"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:196"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "hasFreeSectors()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:195"
        BranchSideFuncs:
        - "createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
        - "setOurBlockIndex(int)"
        - "getFreeBlock()"
        - "getBigBlockSizeDetails()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:176"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:178"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:188"
        BranchSideFuncs:
        - "getValueAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:180"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:201"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:206"
        BranchSideFuncs:
        - "getSBATStart()"
        - "getChainLoopDetector()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:212"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:215"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:170,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:170,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:174,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:174,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:174,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:176,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:179,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:196,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:197,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:198,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:201,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:203,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATStart(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:204,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATBlockCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:207,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:208,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:210,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:211,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:219,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:229,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 17
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 947
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:217"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:111"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:115"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:110,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:112,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 536
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 104
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:544"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:554"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:546"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:543"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:604"
        BranchSideFuncs:
        - "getBATCount()"
        - "setBATArray(int[])"
        - "getBATArray()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:567"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "hasFreeSectors()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:568"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:571"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588"
        BranchSideFuncs:
        - "setXBATStart(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:587"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:603"
        BranchSideFuncs:
        - "getValueAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:597"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
        BranchSideFuncs:
        - "setValueAt(int,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:537,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:545,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:560,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:561,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:586,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:589,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:593,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:608,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:610,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 252
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATBlockCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 621
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.DataSource].size()"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 10
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:108"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:515,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:524,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:526,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:237,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:237,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getBlockStoreBlockSize()"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:88"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:91"
        BranchSideFuncs:
        - "getBlockStoreBlockSize()"
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:94"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:97"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:92,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOccupiedSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 27
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263"
        BranchSideFuncs:
        - "getBlockAt(int)"
        - "getOurBlockIndex()"
        - "hasNext()"
        - "hasFreeSectors()"
        - "next()"
        - "writeData(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:262"
        BranchSideFuncs:
        - "_get_property_table()"
        - "getRoot()"
        - "setSize(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:255"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:258"
        BranchSideFuncs:
        - "getBATEntriesPerBlock()"
        - "getBigBlockSizeDetails()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:257"
        BranchSideFuncs:
        - "getOccupiedSize()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:252,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:252,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:253,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:255,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:256,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:256,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:258,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOccupiedSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 269
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].serialize()"
    - "[java.nio.ByteBuffer].put(byte[])"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:270,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].serialize()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:270,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].serialize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:279"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:275,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:280,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 947
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getOccupiedSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:206"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:212"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:207"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:212"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 629
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[java.lang.Math].multiplyExact(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:58,1"
      Dst: "[java.lang.Math].multiplyExact(int,int)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:58,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].releaseBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:268,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 986
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].releaseBuffer(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:987"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:990"
        BranchSideFuncs:
        - "releaseBuffer(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:989"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:988,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].releaseBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].releaseBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:165"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:168"
        BranchSideFuncs:
        - "unmap(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:164,1"
      Dst: "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:166,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.CleanerUtil$lambda_newBufferCleaner_1__30].freeBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.nio.CleanerUtil].getCleaner()"
    - "[net.jsign.log4j.spi.AbstractLogger].atWarn()"
    - "[net.jsign.log4j.Logger].atWarn()"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].log(java.lang.String)"
    - "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].withThrowable(java.lang.Throwable)"
    - "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - "[net.jsign.log4j.spi.AbstractLogger].atDebug()"
    - "[net.jsign.log4j.Logger].atDebug()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[net.jsign.poi.poifs.nio.CleanerUtil$BufferCleaner].freeBuffer(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 22
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:197"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:201"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:208"
        BranchSideFuncs:
        - "withThrowable(java.lang.Throwable)"
        - "freeBuffer(java.nio.ByteBuffer)"
        - "atWarn()"
        - "getCleaner()"
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:207"
        BranchSideFuncs:
        - "atDebug()"
        - "log(java.lang.String)"
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:203,1"
      Dst: "[net.jsign.poi.poifs.nio.CleanerUtil].getCleaner()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:203,1"
      Dst: "[net.jsign.poi.poifs.nio.CleanerUtil$BufferCleaner].freeBuffer(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.Logger].atWarn()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:208,1"
      Dst: "[net.jsign.log4j.Logger].atDebug()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.nio.CleanerUtil].getCleaner()"
    functionSourceFile: "net.jsign.poi.poifs.nio.CleanerUtil"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.nio.CleanerUtil$BufferCleaner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].getAlgorithmIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].getOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].verify(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.security.Signature].verify(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.security.Signature].verify(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.RuntimeOperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.RuntimeOperatorException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].isOrdered()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getOrdering()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getOrdering()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getOrdering()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getAccuracy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getGenTime()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getGenTimeAccuracy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getAccuracy()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].<init>(net.jsign.bouncycastle.asn1.tsp.Accuracy)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getAccuracy()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].<init>(net.jsign.bouncycastle.asn1.tsp.Accuracy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getAccuracy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].<init>(net.jsign.bouncycastle.asn1.tsp.Accuracy)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getPolicy()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getPolicy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getTsa()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getTsa()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getTsa()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getTsa()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getExtensions()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getNonce()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-2"
        BranchSideFuncs:
        - "getValue()"
        - "getNonce()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getNonce()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getMessageImprintAlgOID()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getMessageImprintDigest()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].zero(int,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
        - "zero(int,int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].zero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.MarkerManager].<init>()"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.MarkerManager:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].clear()"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].clear()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:41,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].exists(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:52,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 3
    returnType: "net.jsign.log4j.Marker"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.MarkerManager:64"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.MarkerManager:68"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.log4j.MarkerManager:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:63,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.MarkerManager:65,1"
      Dst: "[net.jsign.log4j.MarkerManager$Log4jMarker].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:65,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.MarkerManager$Log4jMarker].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager$Log4jMarker"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager].access$000(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager$Log4jMarker:137,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.MarkerManager$Log4jMarker:140,1"
      Dst: "[net.jsign.log4j.MarkerManager].access$000(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].access$000(java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:29,1"
      Dst: "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.MarkerManager:406"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.MarkerManager:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.MarkerManager:408"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:407,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.log4j.Marker"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String,net.jsign.log4j.Marker)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.MarkerManager:83"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.MarkerManager:86"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.MarkerManager:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:82,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.MarkerManager:84,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.MarkerManager:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:84,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.MarkerManager:84,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:86,1"
      Dst: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String,net.jsign.log4j.Marker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String,net.jsign.log4j.Marker)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Marker"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Marker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    - "[net.jsign.log4j.Marker].addParents(net.jsign.log4j.Marker[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:100,1"
      Dst: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:100,1"
      Dst: "[net.jsign.log4j.Marker].addParents(net.jsign.log4j.Marker[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 3
    returnType: "net.jsign.log4j.Marker"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.MarkerManager:64"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.MarkerManager:68"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.log4j.MarkerManager:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:63,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.MarkerManager:65,1"
      Dst: "[net.jsign.log4j.MarkerManager$Log4jMarker].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:65,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String,net.jsign.log4j.Marker)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Marker"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Marker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    - "[net.jsign.log4j.Marker].addParents(net.jsign.log4j.Marker[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:100,1"
      Dst: "[net.jsign.log4j.MarkerManager].getMarker(java.lang.String)"
    - Src: "net.jsign.log4j.MarkerManager:100,1"
      Dst: "[net.jsign.log4j.Marker].addParents(net.jsign.log4j.Marker[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.MarkerManager:406"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.MarkerManager:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.MarkerManager:408"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:407,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.MarkerManager].access$000(java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.MarkerManager:29,1"
      Dst: "[net.jsign.log4j.MarkerManager].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.MarkerManager].access$100()"
    functionSourceFile: "net.jsign.log4j.MarkerManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.timestamp.TimestampingException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.timestamp.TimestampingException"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.timestamp.TimestampingException:30,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.timestamp.TimestampingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.timestamp.TimestampingException"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.timestamp.TimestampingException:34,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].match(java.lang.Object)"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.util.Selector].match(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 6
    ICount: 19
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Selector].match(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[java.util.Collection].iterator()"
    functionUses: 7
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].match(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].match(java.lang.Object)"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.util.Selector].match(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 6
    ICount: 19
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    - Branch String: "net.jsign.bouncycastle.util.CollectionStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.CollectionStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "match(java.lang.Object)"
        - "next()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Selector].match(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:84,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:86,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:86,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 2
    returnType: "net.jsign.commons.io.input.CharSequenceInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17:-1,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "java.io.UncheckedIOException"
    argCount: 1
    argTypes:
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:339,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].getCharsetEncoder()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].setCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:116,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:117,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:117,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].newEncoder(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:52,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].newEncoder(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].newEncoder(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newEncoder()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].newEncoder()"
    - "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:150,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:150,1"
      Dst: "[java.nio.charset.Charset].newEncoder()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:151,1"
      Dst: "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:152,1"
      Dst: "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].setCharsetEncoder(java.nio.charset.CharsetEncoder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_setCharsetEncoder_1__43].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    - "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    - "[java.nio.charset.CharsetEncoder].charset()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:129,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_setCharsetEncoder_1__43].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:129,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:130,1"
      Dst: "[java.nio.charset.CharsetEncoder].charset()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:130,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 2
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger$init__4].get()"
    - "[net.jsign.log4j.util.Strings$init__12].get()"
    - "[net.jsign.commons.io.IOUtils$byteArray__2].get()"
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].get()"
    - "[net.jsign.commons.io.IOUtils$charArray__3].get()"
    - "[java.util.function.Supplier].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.charset.CharsetEncoders:50"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.charset.CharsetEncoders:49"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:50,1"
      Dst: "[java.util.function.Supplier].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].lambda$setCharsetEncoder$1()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharsetDefault()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:129,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharsetDefault()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:129,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].access$000(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].newEncoder(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:52,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].newEncoder(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].lambda$get$0()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.input.CharSequenceInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharSequence()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder,net.jsign.commons.io.input.CharSequenceInputStream$1)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharSequence()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder,net.jsign.commons.io.input.CharSequenceInputStream$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder,net.jsign.commons.io.input.CharSequenceInputStream$1)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "java.nio.charset.CharsetEncoder"
    - "net.jsign.commons.io.input.CharSequenceInputStream$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:52,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    - "[net.jsign.commons.io.input.ReaderInputStream].checkMinBufferSize(java.nio.charset.CharsetEncoder,int)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].fillBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.CharBuffer].rewind()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:191,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:194,1"
      Dst: "[net.jsign.commons.io.input.ReaderInputStream].checkMinBufferSize(java.nio.charset.CharsetEncoder,int)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:194,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:195,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:196,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:200,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].fillBuffer()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:204,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:206,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.ReaderInputStream].checkMinBufferSize(java.nio.charset.CharsetEncoder,int)"
    functionSourceFile: "net.jsign.commons.io.input.ReaderInputStream"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream].minBufferSize(java.nio.charset.CharsetEncoder)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Float].valueOf(float)"
    - "[java.nio.charset.CharsetEncoder].charset()"
    - "[java.nio.charset.Charset].displayName()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.ReaderInputStream:175"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.ReaderInputStream:179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.ReaderInputStream:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.ReaderInputStream:174,1"
      Dst: "[net.jsign.commons.io.input.ReaderInputStream].minBufferSize(java.nio.charset.CharsetEncoder)"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:176,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:176,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:177,1"
      Dst: "[java.nio.charset.CharsetEncoder].charset()"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:177,1"
      Dst: "[java.nio.charset.Charset].displayName()"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:176,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.input.ReaderInputStream:176,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.ReaderInputStream].minBufferSize(java.nio.charset.CharsetEncoder)"
    functionSourceFile: "net.jsign.commons.io.input.ReaderInputStream"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.ReaderInputStream:183,1"
      Dst: "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream].fillBuffer()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].compact()"
    - "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - "[java.nio.charset.CoderResult].isError()"
    - "[java.nio.charset.CoderResult].throwException()"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.CharSequenceInputStream:262"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.CharSequenceInputStream:265"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.CharSequenceInputStream:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:260,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:261,1"
      Dst: "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:262,1"
      Dst: "[java.nio.charset.CoderResult].isError()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:263,1"
      Dst: "[java.nio.charset.CoderResult].throwException()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream:265,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 60
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getBlockSize()"
        - "init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
        - "<init>(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    functionUses: 14
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 32
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "init(long,byte[],byte[])"
        - "clone(byte[])"
        - "getReference()"
        - "makeNative(int,boolean)"
        - "getKey()"
        - "<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(net.jsign.bouncycastle.crypto.params.KeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 32
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "init(long,byte[],byte[])"
        - "clone(byte[])"
        - "getReference()"
        - "makeNative(int,boolean)"
        - "getKey()"
        - "<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 49
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "process(long,byte[],int,int,byte[],int)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    functionUses: 14
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getMultiBlockSize(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getMultiBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlocks(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].makeNative(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 11
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].<init>(net.jsign.bouncycastle.crypto.CipherParameters,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom(java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].<init>(net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].<init>(net.jsign.bouncycastle.crypto.CipherParameters,java.security.SecureRandom)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].<init>(net.jsign.bouncycastle.crypto.CipherParameters,java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].bitCount(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].bitCount(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].bitCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].highestOneBit(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].highestOneBit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].highestOneBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].lowestOneBit(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].lowestOneBit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].lowestOneBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].numberOfLeadingZeros(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfTrailingZeros(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfTrailingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].reverse(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].reverse(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].reverse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].reverseBytes(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].reverseBytes(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].rotateLeft(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].rotateLeft(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].rotateLeft(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].rotateRight(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].rotateRight(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].rotateRight(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Integers].valueOf(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].<init>(int,boolean,net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "boolean"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].access$000()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].access$100(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].scaleY(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[],int,int,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    functionUses: 0
    ICount: 124
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].access$100(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].scaleY(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[],int,int,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 19
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(net.jsign.bouncycastle.asn1.tsp.TimeStampReq)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getExtensions()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].loadRequest(java.io.InputStream)"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(net.jsign.bouncycastle.asn1.tsp.TimeStampReq)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].loadRequest(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].<init>(net.jsign.bouncycastle.asn1.tsp.TimeStampReq)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].loadRequest(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream:net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - "[java.io.ByteArrayInputStream].available()"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].size()"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].maxMemory()"
    functionUses: 1
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.ByteArrayInputStream].available()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].maxMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].checkOption(java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].checkOption(java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString:net.jsign.bouncycastle.asn1.ASN1Sequence].getOctets()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].checkOption(java.lang.Object,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 35
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getVersion()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getVersion()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintAlgOID()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintAlgID()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintDigest()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getReqPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getReqPolicy()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs:
        - "getReqPolicy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getReqPolicy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getReqPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getNonce()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs:
        - "getValue()"
        - "getNonce()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getNonce()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getCertReq()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getCertReq()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getCertReq()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getCertReq()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampReq:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].validate(java.util.Set,java.util.Set,java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "java.util.Set"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].convert(java.util.Set)"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintAlgOID()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].getReqPolicy()"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].oids()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.tsp.TSPUtil].getDigestLength(java.lang.String)"
    - "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintDigest()"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].convert(java.util.Set)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintAlgOID()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getReqPolicy()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtensions()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].oids()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPUtil].getDigestLength(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintDigest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].convert(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidIdentifier(java.lang.String,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 38
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidIdentifier(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidIdentifier(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,long)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 1
    ICount: 36
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.ByteArrayOutputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.ByteArrayOutputStream"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.math.BigInteger].intValue()"
    - "[java.math.BigInteger].shiftRight(int)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintAlgOID()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPValidationException:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getReqPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getReqPolicy()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs:
        - "getReqPolicy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getReqPolicy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].oids()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].getDigestLength(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getMessageImprintDigest()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPUtil].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPUtil].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampRequest].convert(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampRequest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampRequest:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].add(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].addExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].addOne(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].half(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$3].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$3:121,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$3].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$3:124"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$3:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$3:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$3:124,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$3:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$3:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$3:125,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$3:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$3:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap].map(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ScaleXPointMap:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].<init>(java.net.URL)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].get(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$600(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getPolicyIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getPolicyQualifiers()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].append(java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 7
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.StringBuffer)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTF8String$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTF8String$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTF8String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTF8String$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTF8String$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTF8String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTF8String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].setNativeEnabled(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].getNativeStatusMessage()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].getSelectedVariant()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.io.InputStream].close()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].installLib(java.lang.String,java.lang.String,java.lang.String,java.io.File,java.util.Set)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.io.File"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.io.File"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].mapLibraryName(java.lang.String)"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.io.File)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.System].mapLibraryName(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.io.File"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.jar.JarException].<init>(java.lang.String)"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].close()"
    - "[java.io.InputStream].close()"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[java.io.OutputStream].flush()"
    - "[java.io.FileOutputStream].close()"
    functionUses: 2
    ICount: 85
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.jar.JarException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[])"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[java.io.InputStream].read(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 19
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "getDigestSize()"
        - "<init>()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
        - "read(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 5
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    functionUses: 7
    ICount: 29
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].encode(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.EncoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].isLE()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteOrder].nativeOrder()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.nio.ByteOrder].nativeOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].loadDriver()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.util.HashSet].<init>()"
    - "[java.io.File].listFiles()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isLE()"
    - "[java.lang.System].mapLibraryName(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.io.InputStream].close()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].installLib(java.lang.String,java.lang.String,java.lang.String,java.io.File,java.util.Set)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].<init>(java.io.File)"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.VariantSelector].getBestVariantName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].<init>(java.io.File)"
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    functionUses: 0
    ICount: 381
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader$1].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isLE()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.System].mapLibraryName(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].installLib(java.lang.String,java.lang.String,java.lang.String,java.io.File,java.util.Set)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader$2].<init>(java.io.File)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.VariantSelector].getBestVariantName()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].getName()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].toString()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader$3].<init>(java.io.File)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 23
    BBCount: 77
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "getPropertyValue(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isLE()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteOrder].nativeOrder()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.nio.ByteOrder].nativeOrder()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].installLib(java.lang.String,java.lang.String,java.lang.String,java.io.File,java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.io.File"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.io.File"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.lang.System].mapLibraryName(java.lang.String)"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 57
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "hasNext()"
        - "copyFromJar(java.lang.String,java.io.File,java.lang.String)"
        - "next()"
        - "loadVariantsDeps(java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "hasNext()"
        - "copyFromJar(java.lang.String,java.io.File,java.lang.String)"
        - "next()"
        - "loadVariantsDeps(java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "hasNext()"
        - "copyFromJar(java.lang.String,java.io.File,java.lang.String)"
        - "next()"
        - "loadVariantsDeps(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.System].mapLibraryName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].loadVariantsDeps(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getFile(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].getFile(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.io.File"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.jar.JarException].<init>(java.lang.String)"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].close()"
    - "[java.io.InputStream].close()"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[java.io.OutputStream].flush()"
    - "[java.io.FileOutputStream].close()"
    functionUses: 2
    ICount: 85
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "pipeAll(java.io.InputStream,java.io.OutputStream)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "takeSHA256Digest(java.io.InputStream)"
        - "close()"
        - "toHexString(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.jar.JarException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader$2].<init>(java.io.File)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.VariantSelector].getBestVariantName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.VariantSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader$3].<init>(java.io.File)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLibIdentity"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibIdent()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLibIdentity:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibIdent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibIdent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLibIdentity"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].getNativeServices()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.NativeServices"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - "[java.io.InputStream].read(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    functionUses: 7
    ICount: 29
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].copyFromJar(java.lang.String,java.io.File,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.io.File"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.util.jar.JarException].<init>(java.lang.String)"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - "[java.io.FileInputStream].close()"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.io.InputStream].close()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.OutputStream].flush()"
    - "[java.io.FileOutputStream].close()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Class].getResourceAsStream(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.jar.JarException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].exists()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.FileOutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].takeSHA256Digest(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[])"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[java.io.InputStream].read(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 19
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs:
        - "getDigestSize()"
        - "<init>()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
        - "read(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].access$002(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].access$102(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].access$100()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader].access$200()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.logging.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.DecoderException].<init>()"
    functionSourceFile: "net.jsign.commons.codec.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.DecoderException:39,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.DecoderException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.codec.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.DecoderException:50,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.codec.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.DecoderException:68,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.DecoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.codec.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.DecoderException:82,1"
      Dst: "[java.lang.Exception].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringBuilderReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringBuilderReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$StringBuilderReader:770,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringBuilderReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringBuilderReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$StringBuilderReader:774"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringBuilderReader:778"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$StringBuilderReader:780"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringBuilderReader:784"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$StringBuilderReader:776,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBuilderReader:780,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBuilderReader:782,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBuilderReader:785,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].bootstrap$(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21:-1,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].lambda$toInputStream$0(byte[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21:-1,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].lambda$toInputStream$0(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].lambda$toInputStream$0(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].builder()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:191,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].builder()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:192,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:193,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:194,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:195,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:158,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.build.AbstractOriginSupplier].setByteArray(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:113,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:114,1"
      Dst: "[net.jsign.commons.io.build.AbstractOriginSupplier].setByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:138"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:139,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:124"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 3
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].<init>(byte[],int,int)"
    - "[net.jsign.commons.io.build.AbstractOriginSupplier].checkOrigin()"
    - "[net.jsign.commons.io.build.AbstractOrigin$ReaderOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$CharSequenceOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$ByteArrayOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$InputStreamOrigin].getByteArray()"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.build.AbstractOriginSupplier].checkOrigin()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].getByteArray()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].requireNonNegative(int,java.lang.String)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].minPosLen(byte[],int)"
    - "[java.io.InputStream].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:231,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:232,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].requireNonNegative(int,java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:234,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:235,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].minPosLen(byte[],int)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:235,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].requireNonNegative(int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:167"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:168,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:168,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:168,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].minPosLen(byte[],int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].requireNonNegative(int,java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:163"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:161"
        BranchSideFuncs:
        - "requireNonNegative(int,java.lang.String)"
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:162,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].requireNonNegative(int,java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream:163,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreType$13].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$13:337,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$13].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$13:340"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$13:341"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$13:340"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$13:340"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$13:343"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$13:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$13:340,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$13:340,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$13:341,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$13:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$13:341,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$13:341,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$13:341,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.System].getenv()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:226"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:237"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:240"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:227,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.lang.System].getenv()"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.KeyStoreBuilder:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:240,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$13].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].split(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,java.io.File,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$13:347,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$13:347,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$13:348,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$13:348,1"
      Dst: "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,java.io.File,java.lang.String)"
    - Src: "net.jsign.KeyStoreType$13:348,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.jca.DigiCertOneSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.DigiCertOneSigningService].getKeyManager(java.io.File,java.lang.String)"
    - "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,javax.net.ssl.X509KeyManager)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.DigiCertOneSigningService:71,1"
      Dst: "[net.jsign.jca.DigiCertOneSigningService].getKeyManager(java.io.File,java.lang.String)"
    - Src: "net.jsign.jca.DigiCertOneSigningService:71,1"
      Dst: "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,javax.net.ssl.X509KeyManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.DigiCertOneSigningService].getKeyManager(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.jca.DigiCertOneSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "javax.net.ssl.KeyManager"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].<init>()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].build()"
    - "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    - "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.DigiCertOneSigningService:209,1"
      Dst: "[net.jsign.KeyStoreBuilder].<init>()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:209,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    - Src: "net.jsign.jca.DigiCertOneSigningService:209,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - Src: "net.jsign.jca.DigiCertOneSigningService:209,1"
      Dst: "[net.jsign.KeyStoreBuilder].build()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:211,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:211,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.jca.DigiCertOneSigningService:212,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:212,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    - Src: "net.jsign.jca.DigiCertOneSigningService:214,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:216,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.KeyStoreBuilder].<init>()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getPath()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[java.io.File].getPath()"
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].build()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.KeyStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].validate()"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreBuilder].provider()"
    - "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:280,1"
      Dst: "[net.jsign.KeyStoreBuilder].validate()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].provider()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].validate()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.KeyStoreBuilder].storetype()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreType].of(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:133"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:140"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreType].of(java.io.File)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreType].of(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].read(byte[])"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].get(int)"
    - "[java.io.FileInputStream].close()"
    - "[java.nio.ByteBuffer].getInt(int)"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.File].getName()"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].endsWith(java.lang.String)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:559"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:577"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:564"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:566"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:568"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:567"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:568"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:571"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:570"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:578"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:579"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:578"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:578"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:580"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:579"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:580"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:582"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:581"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:582"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:585"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:584"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:559,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:560,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:562,1"
      Dst: "[java.io.FileInputStream].read(byte[])"
    - Src: "net.jsign.KeyStoreType:563,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.KeyStoreType:564,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    - Src: "net.jsign.KeyStoreType:571,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:566,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:577,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.KeyStoreType:577,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.KeyStoreType:578,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 21
  - functionName: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].provider()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:267"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:270"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.KeyStore"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].name()"
    - "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.Provider].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:513"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:513"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:514"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:517"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:520"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:520"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:519"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:523"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:529"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:530"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:533"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:531"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - Src: "net.jsign.KeyStoreType:517,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:524,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:528,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "net.jsign.KeyStoreType:530,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:532,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 7
    BBCount: 30
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.DigiCertOneSigningService].<init>(java.lang.String,javax.net.ssl.X509KeyManager)"
    functionSourceFile: "net.jsign.jca.DigiCertOneSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.net.ssl.X509KeyManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.jca.DigiCertOneSigningService$lambda_new_0__170].bootstrap$(java.lang.String,javax.net.ssl.X509KeyManager)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.DigiCertOneSigningService:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:56,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.DigiCertOneSigningService:81,1"
      Dst: "[net.jsign.jca.DigiCertOneSigningService$lambda_new_0__170].bootstrap$(java.lang.String,javax.net.ssl.X509KeyManager)"
    - Src: "net.jsign.jca.DigiCertOneSigningService:81,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.RESTClient:46,1"
      Dst: "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServiceJcaProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningService].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[net.jsign.jca.SigningService].getName()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].init()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:66,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:67,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:68,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "net.jsign.log4j.util.PropertiesUtil"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:272"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:271,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:396,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.util.PropertiesUtil$Environment"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment].get(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:448,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment].get(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment].get(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment"
    linkageType: null
    functionLinenumber: 518
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.log4j.util.PropertySource$Util].tokenize(java.lang.CharSequence)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.util.SystemPropertiesPropertySource].getNormalForm(java.lang.Iterable)"
    - "[net.jsign.log4j.util.EnvironmentPropertySource].getNormalForm(java.lang.Iterable)"
    - "[net.jsign.log4j.util.PropertiesPropertySource].getNormalForm(java.lang.Iterable)"
    - "[net.jsign.log4j.util.PropertySource].getNormalForm(java.lang.Iterable)"
    - "[net.jsign.log4j.util.PropertiesPropertySource].containsProperty(java.lang.String)"
    - "[net.jsign.log4j.util.SystemPropertiesPropertySource].containsProperty(java.lang.String)"
    - "[net.jsign.log4j.util.EnvironmentPropertySource].containsProperty(java.lang.String)"
    - "[net.jsign.log4j.util.PropertySource].containsProperty(java.lang.String)"
    - "[net.jsign.log4j.util.EnvironmentPropertySource].getProperty(java.lang.String)"
    - "[net.jsign.log4j.util.SystemPropertiesPropertySource].getProperty(java.lang.String)"
    - "[net.jsign.log4j.util.PropertiesPropertySource].getProperty(java.lang.String)"
    - "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 39
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:519"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:522"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:521"
        BranchSideFuncs:
        - "tokenize(java.lang.CharSequence)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:523"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:522"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:521"
        BranchSideFuncs:
        - "tokenize(java.lang.CharSequence)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:524"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:535"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:534"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:525"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:531"
        BranchSideFuncs:
        - "getNormalForm(java.lang.Iterable)"
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:530"
        BranchSideFuncs:
        - "containsProperty(java.lang.String)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:527"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:531"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:530"
        BranchSideFuncs:
        - "containsProperty(java.lang.String)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:527"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:531"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:530"
        BranchSideFuncs:
        - "containsProperty(java.lang.String)"
    - Branch String: "net.jsign.log4j.util.PropertiesUtil$Environment:531"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:534"
        BranchSideFuncs:
        - "getProperty(java.lang.String)"
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil$Environment:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:519,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:520,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:522,1"
      Dst: "[net.jsign.log4j.util.PropertySource$Util].tokenize(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:523,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:524,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:524,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:524,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:526,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getNormalForm(java.lang.Iterable)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:526,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:527,1"
      Dst: "[net.jsign.log4j.util.PropertySource].containsProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment:528,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.log4j.util.PropertySource$Util].tokenize(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.PropertySource$Util"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find(int)"
    - "[java.util.regex.Matcher].end()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:141"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:144"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:154"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:155"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toRootLowerCase(java.lang.String)"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:154"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.util.PropertySource$Util:141,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:142,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:144,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:146,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:147,1"
      Dst: "[java.util.regex.Matcher].find(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:148,1"
      Dst: "[java.util.regex.Matcher].end()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:155,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 293
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:294,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:158,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:170"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:168"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:169,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:170,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createThreadLocalMap()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:76,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createThreadLocalMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "java.lang.ThreadLocal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap)"
    - "[java.lang.ThreadLocal].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:82"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:91"
        BranchSideFuncs:
        - "<init>(net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap)"
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:83,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap)"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:91,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InheritableThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap$1:83,1"
      Dst: "[java.lang.InheritableThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:102,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:126"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:129"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:125,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:129,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 574
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:575,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:115,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:135"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:132,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:134,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:137,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.SortedArrayStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:279"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:283,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 574
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:575,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:350,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:119,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:121,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:122,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:102,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].put(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:129,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:129,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:119,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:121,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:122,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:119,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:121,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:122,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].putAll(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - "[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()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:139"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:140"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:139"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:139"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:139,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:142,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:143,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:143,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:144,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:144,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:144,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:119,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:121,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:122,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].putAllValues(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - "[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()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:151"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:150"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:154"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:150,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:153,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:154,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:154,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:154,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:154,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:155,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:155,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:155,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:119,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:121,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:122,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].get(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:161,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:167"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:166,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:167,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:167"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:166,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:167,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].remove(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:173"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:176"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:172,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:174,1"
      Dst: "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].removeAll(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:181"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:180,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:182,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:182,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:182,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:183,1"
      Dst: "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].clear()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.StringMap].clear()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:191"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:194"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:190,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:192,1"
      Dst: "[net.jsign.log4j.util.StringMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].containsKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].containsKey(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:199"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:197"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:199"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:198,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:199,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].containsKey(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getCopy()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:205"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:204,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:205,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:205,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getReadOnlyContextData()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:214"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:218"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:213,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:215,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:216,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:102,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toMap()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:222"
        BranchSideFuncs:
        - "toMap()"
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:223,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:230"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:230"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:229,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:230,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].toString()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toString()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.Object].toString()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:236"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:234"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:235,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:236,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].hashCode()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.StringMap].hashCode()"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:244"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:243"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:242"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:243,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:244,1"
      Dst: "[net.jsign.log4j.util.StringMap].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.NoOpThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:250"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:253"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:252"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:253"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:256"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:259"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:258"
        BranchSideFuncs:
        - "getImmutableMapOrNull()"
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:260,1"
      Dst: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:261,1"
      Dst: "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:262,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toMap()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:222"
        BranchSideFuncs:
        - "toMap()"
    Callsites:
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:223,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - Src: "net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap:224,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].addOne(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].half(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].squareN(int[],int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Locale"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:92"
        BranchSideFuncs:
        - "formatMessage(java.lang.String,java.lang.Object[])"
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:90,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:122,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getFormat()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getParameters()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:110"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:112"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:122,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:124,1"
      Dst: "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 5
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:131"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:134,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:140,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:144,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].hashCode()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:149"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:149,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:150,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].toString()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:157,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:92"
        BranchSideFuncs:
        - "formatMessage(java.lang.String,java.lang.Object[])"
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:90,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    - "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    - "[java.io.ObjectOutputStream].writeUTF(java.lang.String)"
    - "[java.io.ObjectOutputStream].writeInt(int)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:168"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:161,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:162,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:163,1"
      Dst: "[java.io.ObjectOutputStream].writeUTF(java.lang.String)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:165,1"
      Dst: "[java.io.ObjectOutputStream].writeInt(int)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:169,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getFormattedMessage()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:92"
        BranchSideFuncs:
        - "formatMessage(java.lang.String,java.lang.Object[])"
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:90,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].formatMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.io.ObjectInputStream].readUTF()"
    - "[java.io.ObjectInputStream].readInt()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:177,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:178,1"
      Dst: "[java.io.ObjectInputStream].readUTF()"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:180,1"
      Dst: "[java.io.ObjectInputStream].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].getThrowable()"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].<init>()"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLoggerContextFactory:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].removeContext(net.jsign.log4j.spi.LoggerContext)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.LoggerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].isClassLoaderDependent()"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].isPredictionResistant()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 5
    ICount: 20
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "addTask(java.lang.Runnable)"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].entropySize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Properties$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Properties$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Properties$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProperty(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Properties$1:-1,1"
      Dst: "[java.security.Security].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createCipher(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.Cipher"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.Cipher].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.Cipher].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createMac(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.Mac"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.Mac].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.Mac].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createKeyAgreement(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.KeyAgreement"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.KeyAgreement].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.KeyAgreement].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameterGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.AlgorithmParameterGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.AlgorithmParameterGenerator].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.AlgorithmParameterGenerator].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.AlgorithmParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.AlgorithmParameters].getInstance(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createKeyGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.KeyGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.KeyGenerator].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.KeyGenerator].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createKeyFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyFactory].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.KeyFactory].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSecretKeyFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.SecretKeyFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.SecretKeyFactory].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.SecretKeyFactory].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createKeyPairGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyPairGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyPairGenerator].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.KeyPairGenerator].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createMessageDigest(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Signature].getInstance(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.Signature].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createCertificateFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertificateFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSecureRandom(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.SecureRandom].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createCertPathBuilder(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertPathBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertPathBuilder].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertPathBuilder].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createCertPathValidator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertPathValidator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertPathValidator].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertPathValidator].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createCertStore(java.lang.String,java.security.cert.CertStoreParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertStore"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.cert.CertStoreParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertStore].getInstance(java.lang.String,java.security.cert.CertStoreParameters)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertStore].getInstance(java.lang.String,java.security.cert.CertStoreParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createExemptionMechanism(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.ExemptionMechanism"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.ExemptionMechanism].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[javax.crypto.ExemptionMechanism].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createKeyStore(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyStore"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits(int)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes(int)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits(int)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].intValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 7
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].intValue()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$Builder:128,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].getDefaultByteOrderMark()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 2
    returnType: "net.jsign.commons.io.input.BOMInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getInputStream()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$Builder:171,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getInputStream()"
    - Src: "net.jsign.commons.io.input.BOMInputStream$Builder:171,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "boolean"
    - "net.jsign.commons.io.ByteOrderMark[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].sort(java.util.Comparator)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:272"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:275"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:271,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:272,1"
      Dst: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - Src: "net.jsign.commons.io.input.BOMInputStream:273,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:276,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.commons.io.input.BOMInputStream:278,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1784
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1784"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].setByteOrderMarks(net.jsign.commons.io.ByteOrderMark[])"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.BOMInputStream$Builder"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.ByteOrderMark[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream$Builder:184"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream$Builder:184"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream$Builder:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$Builder:184,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].setInclude(boolean)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.BOMInputStream$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].access$000()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.ByteOrderMark[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].getIdentifier()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].getParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "getAttrType()"
        - "addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 4
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getAttrType()"
        - "addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.cms.Attributes)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.Attributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attributes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attributes].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.cms.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 7
    ICount: 21
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Vector].size()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Hashtable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Vector].elements()"
    functionUses: 3
    ICount: 23
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.Attributes"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Vector].elements()"
    functionUses: 3
    ICount: 23
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.cms.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ThreadLocalUtil].<init>()"
    functionSourceFile: "net.jsign.poi.util.ThreadLocalUtil"
    linkageType: null
    functionLinenumber: -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.jsign.poi.util.ThreadLocalUtil:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ThreadLocalUtil].clearAllThreadLocals()"
    functionSourceFile: "net.jsign.poi.util.ThreadLocalUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.ThreadLocalUtil$run__44].bootstrap$()"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.ThreadLocalUtil:49,1"
      Dst: "[net.jsign.poi.util.ThreadLocalUtil$run__44].bootstrap$()"
    - Src: "net.jsign.poi.util.ThreadLocalUtil:49,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ThreadLocalUtil].registerCleaner(java.lang.Runnable)"
    functionSourceFile: "net.jsign.poi.util.ThreadLocalUtil"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.ThreadLocalUtil:61,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.BasicPermission].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.security.BasicPermission].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].calculateMask(java.lang.String)"
    - "[java.security.BasicPermission].<init>(java.lang.String,java.lang.String)"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.security.BasicPermission].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].calculateMask(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].calculateMask(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - "[java.util.StringTokenizer].hasMoreTokens()"
    - "[java.util.StringTokenizer].nextToken()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 42
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs:
        - "toLowerCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.util.StringTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.util.StringTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].getActions()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].implies(java.security.Permission)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Permission"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Permission].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.security.Permission].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Permission].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 5
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.security.Permission].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Permission].getName()"
    - "[java.lang.String].hashCode()"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.security.Permission].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission:-1,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].<init>(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].getCounter()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].getSeed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 5
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.Provider$Service"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$101(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$200(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$301(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$401(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.security.Provider$Service)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider$Service].getType()"
    - "[java.security.Provider$Service].getAlgorithm()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    functionUses: 5
    ICount: 26
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "access$101(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String)"
        - "access$301(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.Object)"
        - "access$401(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.security.Provider$Service)"
        - "access$200(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$101(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$200(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[java.security.Provider$Service].getType()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[java.security.Provider$Service].getAlgorithm()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$301(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$401(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.security.Provider$Service)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$101(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider$Service"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].getService(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.Provider].getService(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$200(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$301(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].remove(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.Provider].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].access$401(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider,java.security.Provider$Service)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    - "java.security.Provider$Service"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].putService(java.security.Provider$Service)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.Provider].putService(java.security.Provider$Service)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].flattenBitStrings(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 30
    ICount: 51
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    functionUses: 33
    ICount: 40
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "encodeConstructed()"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "encodeConstructed()"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "encodeConstructed()"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "encodeConstructed()"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.BERBitString:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERBitString:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 4
    ICount: 10
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    - "byte"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte,byte[],int,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "boolean"
    - "int"
    - "byte"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getRevocationDate()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getRevocationDate()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getRevocationDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getRevocationDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "getTime()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 61
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 2
    ICount: 73
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getRawOffset()"
    - "[java.util.TimeZone].useDaylightTime()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    - "[java.util.TimeZone].inDaylightTime(java.util.Date)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 62
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getRawOffset()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].useDaylightTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].inDaylightTime(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.text.SimpleDateFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].toString(int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Integer].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getCertificateIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.CatalogSignableProvider].<init>()"
    functionSourceFile: "net.jsign.spi.CatalogSignableProvider"
    linkageType: null
    functionLinenumber: -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.jsign.spi.CatalogSignableProvider:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.CatalogSignableProvider].isSupported(java.io.File)"
    functionSourceFile: "net.jsign.spi.CatalogSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.cat.CatalogFile].isCatalogFile(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.CatalogSignableProvider:38,1"
      Dst: "[net.jsign.cat.CatalogFile].isCatalogFile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].isCatalogFile(java.io.File)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].isFile()"
    - "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    - "[net.jsign.cat.CatalogFile].close()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.cat.CatalogFile:66"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.cat.CatalogFile:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.cat.CatalogFile:66"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.cat.CatalogFile:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:66,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.cat.CatalogFile:66,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.cat.CatalogFile:71,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    - Src: "net.jsign.cat.CatalogFile:72,1"
      Dst: "[net.jsign.cat.CatalogFile].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(java.io.InputStream)"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:95,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.cat.CatalogFile:98,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.cat.CatalogFile:101,1"
      Dst: "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.cat.CatalogFile:101,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(java.io.InputStream)"
    - Src: "net.jsign.cat.CatalogFile:103,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(java.io.InputStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 15
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 30
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "getOctets()"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
        - "getContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "getOctets()"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
        - "getContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.SignedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.SignedData"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 62
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.PKCS7ProcessableObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.PKCS7ProcessableObject:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].close()"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:109,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.CatalogSignableProvider].create(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.spi.CatalogSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.Signable"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.CatalogSignableProvider:43,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.SecretKeyFactorySpi].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[javax.crypto.SecretKeyFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].engineGenerateSecret(java.security.spec.KeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.SecretKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.SecretKeySpec].getEncoded()"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].engineGetKeySpec(javax.crypto.SecretKey,java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.KeySpec"
    argCount: 2
    argTypes:
    - "javax.crypto.SecretKey"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.security.Key].getEncoded()"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Throwable].toString()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].engineTranslateKey(javax.crypto.SecretKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.SecretKey"
    argCount: 1
    argTypes:
    - "javax.crypto.SecretKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[java.security.Key].getAlgorithm()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Key].getEncoded()"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.encoders.UTF8:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].fill(byte[],int,int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.UTF8:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:44,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingOptionException].<init>(java.util.List)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    - "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:56,1"
      Dst: "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    - Src: "net.jsign.commons.cli.MissingOptionException:56,1"
      Dst: "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingOptionException].getMissingOptions()"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.MissingOptionException:81"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.MissingOptionException:85"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:93"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.MissingOptionException:88"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:80,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.MissingOptionException:81,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.MissingOptionException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.MissingOptionException:84,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.MissingOptionException:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.MissingOptionException:87,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.MissingOptionException:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.cli.MissingOptionException:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.log4j.ThreadContext$EmptyThreadContextStack:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[java.util.Collection].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.security.cert.Certificate].getEncoded()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.cert.CertificateEncodingException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 32
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(byte[])"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(byte[])"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.security.cert.CertificateEncodingException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].parseBytes(byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].parseBytes(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].parseBytes(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 124
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 22
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getTBSCertificate()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getTBSCertificate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getTBSCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 78
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 78
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].generateWorkingKey(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[][]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 228
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 78
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].FFmulX2(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].bitsOfSecurity()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].generateWorkingKey(byte[],boolean)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 35
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "bitsOfSecurity()"
        - "getKey()"
        - "generateWorkingKey(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "bitsOfSecurity()"
        - "getKey()"
        - "generateWorkingKey(byte[],boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].generateWorkingKey(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].bitsOfSecurity()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].generateWorkingKey(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[][]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 228
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "shift(int,int)"
        - "inv_mcol(int)"
        - "subWord(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].subWord(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].inv_mcol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].bitsOfSecurity()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.Utils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.Utils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.Object"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].decryptBlock(byte[],int,byte[],int,int[][])"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].encryptBlock(byte[],int,byte[],int,int[][])"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 49
    ICount: 30
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "decryptBlock(byte[],int,byte[],int,int[][])"
        - "encryptBlock(byte[],int,byte[],int,int[][])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "decryptBlock(byte[],int,byte[],int,int[][])"
        - "encryptBlock(byte[],int,byte[],int,int[][])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "decryptBlock(byte[],int,byte[],int,int[][])"
        - "encryptBlock(byte[],int,byte[],int,int[][])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "decryptBlock(byte[],int,byte[],int,int[][])"
        - "encryptBlock(byte[],int,byte[],int,int[][])"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].encryptBlock(byte[],int,byte[],int,int[][])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].decryptBlock(byte[],int,byte[],int,int[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].encryptBlock(byte[],int,byte[],int,int[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 467
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "intToLittleEndian(int,byte[],int)"
        - "shift(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 78
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].decryptBlock(byte[],int,byte[],int,int[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 471
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "intToLittleEndian(int,byte[],int)"
        - "shift(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].encryptBlock(byte[],int,byte[],int,int[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 467
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "intToLittleEndian(int,byte[],int)"
        - "shift(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].decryptBlock(byte[],int,byte[],int,int[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    functionUses: 1
    ICount: 471
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "intToLittleEndian(int,byte[],int)"
        - "shift(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].bitsOfSecurity()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.Signature"
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].verify(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].verify(byte[])"
    - "[java.security.Signature].verify(byte[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].verify(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.security.Signature].verify(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].verify(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.security.Signature].verify(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.security.Signature].verify(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].verify(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.security.Signature].update(byte[])"
    - "[java.security.Signature].verify(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 29
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.security.Signature].update(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.security.Signature].verify(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.RuntimeOperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.RuntimeOperatorException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].getCurve(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.asn1.x9.X962Parameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAcceptableNamedCurves()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAcceptableNamedCurves()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9FieldID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getIdentifier()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    functionUses: 0
    ICount: 92
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getIdentifier()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getParameters()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].importPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].importPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "java.security.spec.EllipticCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EllipticCurve].getField()"
    - "[java.security.spec.EllipticCurve].getA()"
    - "[java.security.spec.EllipticCurve].getB()"
    - "[java.security.spec.ECFieldFp].getP()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.security.spec.ECFieldF2m].getM()"
    - "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldFp].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getM()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECPoint].getAffineX()"
    - "[java.security.spec.ECPoint].getAffineY()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineX()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineY()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertToSpec(net.jsign.bouncycastle.asn1.x9.X962Parameters,net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.spec.ECParameterSpec"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getCurveName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable].getParameterSpec(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getCurveName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable].getParameterSpec(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.EllipticCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.ECField"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField:net.jsign.bouncycastle.math.field.PrimeField].getDimension()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getCurveName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.security.spec.EllipticCurve"
    - "java.security.spec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable].getParameterSpec(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - Src: "net.jsign.bouncycastle.jce.ECGOST3410NamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertToSpec(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.EllipticCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertToSpec(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.EllipticCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.EllipticCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "java.security.spec.EllipticCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EllipticCurve].getField()"
    - "[java.security.spec.EllipticCurve].getA()"
    - "[java.security.spec.EllipticCurve].getB()"
    - "[java.security.spec.ECFieldFp].getP()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.security.spec.ECFieldF2m].getM()"
    - "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldFp].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getM()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.ECField"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.EllipticCurve,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.spec.ECParameterSpec"
    argCount: 2
    argTypes:
    - "java.security.spec.EllipticCurve"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.security.spec.EllipticCurve"
    - "java.security.spec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "java.security.spec.ECParameterSpec"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "java.security.spec.EllipticCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EllipticCurve].getField()"
    - "[java.security.spec.EllipticCurve].getA()"
    - "[java.security.spec.EllipticCurve].getB()"
    - "[java.security.spec.ECFieldFp].getP()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.security.spec.ECFieldF2m].getM()"
    - "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldFp].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getM()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].getMidTermsOfReductionPolynomial()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECPoint].getAffineX()"
    - "[java.security.spec.ECPoint].getAffineY()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineX()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineY()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECPoint].getAffineX()"
    - "[java.security.spec.ECPoint].getAffineY()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineX()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].getAffineY()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECPoint].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 42
    EdgeCount: 107
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.util.Date,java.util.Locale)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Date"
    - "java.util.Locale"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTimeString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 2
    ICount: 73
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getRawOffset()"
    - "[java.util.TimeZone].useDaylightTime()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    - "[java.util.TimeZone].inDaylightTime(java.util.Date)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 62
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "pruneFractionalSeconds(java.lang.String)"
        - "convert(int)"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getRawOffset()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].useDaylightTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].inDaylightTime(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.text.SimpleDateFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].convert(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].toString(int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Integer].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 28
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionUses: 33
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(byte[])"
    functionUses: 24
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "<init>()"
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 10
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 15
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.spec.RSAPublicKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.RSAPublicKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.security.spec.RSAPublicKeySpec].getModulus()"
    - "[java.security.spec.RSAPublicKeySpec].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.spec.RSAPublicKeySpec].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.spec.RSAPublicKeySpec].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.interfaces.RSAPublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.math.BigInteger].intValue()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].validate(java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].validate(java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].validate(java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[java.math.BigInteger].intValue()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getMRIterations(int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.Primes].enhancedMRProbablePrimeTest(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.math.Primes$MROutput].isProvablyComposite()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getMRIterations(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].enhancedMRProbablePrimeTest(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].isProvablyComposite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "getPropertyValue(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].hasAnySmallFactors(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.util.BigIntegers].modOddIsCoprimeVar(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].modOddIsCoprimeVar(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddIsCoprimeVar(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprimeVar(int[],int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprimeVar(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getMRIterations(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].isProvablyComposite()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getFormat()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].engineGetKeyParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPublicExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPublicExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPublicExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPublicExponent()"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].toString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateExponentFingerprint(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.math.BigInteger].toString(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 4
    ICount: 27
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateExponentFingerprint(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.math.BigInteger].toString(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs:
        - "doFinal(byte[],int,int)"
        - "update(byte[],int,int)"
        - "newInstance(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "hasEnabledService(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 6
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateExponentFingerprint(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.io.ObjectInputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256And192BitAESBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256And192BitAESBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,int,int,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256And192BitAESBC:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InheritableThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:86,1"
      Dst: "[java.lang.InheritableThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].childValue(net.jsign.log4j.util.StringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.StringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:92,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:93,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:135"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:132,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:134,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:137,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].childValue(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].childValue(net.jsign.log4j.util.StringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:86,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].childValue(net.jsign.log4j.util.StringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].childValue(net.jsign.log4j.util.StringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.StringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:92,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:93,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ThreadLocal].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.security.SecureRandom].<init>()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[java.security.SecureRandom].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ThreadLocal].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].setParameter(java.lang.String,java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.SecurityManager].checkPermission(java.security.Permission)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.lang.ThreadLocal].remove()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.SecurityManager].checkPermission(java.security.Permission)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 23
    BBCount: 47
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getEcImplicitlyCa()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getDHDefaultParameters(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "javax.crypto.spec.DHParameterSpec"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[javax.crypto.spec.DHParameterSpec].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$300(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$300(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$300(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.DHParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.DHParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getDSADefaultParameters(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.DSAParameterSpec"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[java.security.spec.DSAParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.security.spec.DSAParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getAcceptableNamedCurves()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getAdditionalECParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Objects].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Objects].areEqual(java.lang.Object,java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Objects:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Objects:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Objects:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Objects:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Objects].hashCode(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Objects:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$STOutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$STOutput].getPrime()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$STOutput].getPrimeSeed()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$STOutput].getPrimeGenCounter()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int,net.jsign.bouncycastle.math.Primes$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    - "net.jsign.bouncycastle.math.Primes$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$STOutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].<init>()"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.message.ParameterFormatter:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 3
    returnType: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].<init>()"
    - "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:86,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:87,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].<init>()"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:155,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 52
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:120"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:128"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:149"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:130"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:132"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:137"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:138"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:137"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:137"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:143"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:119,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:129,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:138,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].ensurePlaceholderCharIndicesCapacity(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:155,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].ensurePlaceholderCharIndicesCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].ensurePlaceholderCharIndicesCapacity(int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].addExact(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:185"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:191"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:190"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:191"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:200"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:199"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:192"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:194"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:186,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:194,1"
      Dst: "[java.lang.Math].addExact(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis:196,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 52
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:120"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:128"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:149"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:130"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:132"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:137"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:138"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:137"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:137"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:143"
        BranchSideFuncs:
        - "access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:119,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:129,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:138,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].access$000(net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].format(java.lang.String,java.lang.Object[],int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int)"
    - "[net.jsign.log4j.message.ParameterFormatter].formatMessage(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:212,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:213,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:214,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].formatMessage(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 3
    returnType: "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].<init>()"
    - "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:86,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:87,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].analyzePattern(java.lang.String,int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessage(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:232"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:232"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:242"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:248"
        BranchSideFuncs:
        - "formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:247"
        BranchSideFuncs:
        - "formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:227,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:235,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:233,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:243,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:248,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 282
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.String].length()"
    functionUses: 1
    ICount: 21
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:285"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:292"
        BranchSideFuncs:
        - "copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:284,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:287,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:288,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:293,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:304"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:330"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:306"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:315"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:314"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:307"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:315"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:326"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:321"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:305,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:312,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:318,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:318,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:319,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:406,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 430
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    functionUses: 5
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:431"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:434"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:433"
        BranchSideFuncs:
        - "isMaybeRecursive(java.lang.Object)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:434"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:437"
        BranchSideFuncs:
        - "appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:436"
        BranchSideFuncs:
        - "tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:431,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:434,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:435,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:437,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 441
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    - "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:442"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:441"
        BranchSideFuncs:
        - "appendDate(java.lang.Object,java.lang.StringBuilder)"
        - "appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:442"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:441"
        BranchSideFuncs:
        - "appendDate(java.lang.Object,java.lang.StringBuilder)"
        - "appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:442,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:442,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.StringBuilders"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.SimpleMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ReusableParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ParameterizedMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ObjectMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].formatTo(java.lang.StringBuilder)"
    - "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.Character].charValue()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Short].shortValue()"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 78
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:101"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:103"
        BranchSideFuncs:
        - "formatTo(java.lang.StringBuilder)"
      - BranchSide: "net.jsign.log4j.util.StringBuilders:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:105"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:107"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:111"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:113"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:117"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:119"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:118"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:120"
        BranchSideFuncs:
        - "isDate(java.lang.Object)"
        - "isTime(java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StringBuilders:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StringBuilders:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StringBuilders:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StringBuilders:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.StringBuilders:102,1"
      Dst: "[net.jsign.log4j.util.StringBuilderFormattable].formatTo(java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.util.StringBuilders:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:106,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:108,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:110,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:112,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.Character].charValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:114,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.StringBuilders:116,1"
      Dst: "[java.lang.Short].shortValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:118,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "net.jsign.log4j.util.StringBuilders:120,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isTime(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:121,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].isDate(java.lang.Object)"
    - Src: "net.jsign.log4j.util.StringBuilders:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 29
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 445
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Date].toInstant()"
    - "[java.time.format.DateTimeFormatter].format(java.time.temporal.TemporalAccessor)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:446"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:449"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.util.Date].toInstant()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.time.format.DateTimeFormatter].format(java.time.temporal.TemporalAccessor)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 456
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:457,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:457,1"
      Dst: "[java.lang.Class].isArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:465"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:467"
        BranchSideFuncs:
        - "appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:466"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:467"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:469"
        BranchSideFuncs:
        - "appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:469"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:472"
        BranchSideFuncs:
        - "appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:464,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:465,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:466,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:468,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:470,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 480
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Arrays].toString(byte[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Arrays].toString(short[])"
    - "[java.util.Arrays].toString(int[])"
    - "[java.util.Arrays].toString(long[])"
    - "[java.util.Arrays].toString(float[])"
    - "[java.util.Arrays].toString(double[])"
    - "[java.util.Arrays].toString(boolean[])"
    - "[java.util.Arrays].toString(char[])"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 73
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:481"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:483"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:483"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:485"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:484"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:485"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:487"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:486"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:487"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:489"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:488"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:489"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:491"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:490"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:491"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:493"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:492"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:493"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:495"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:494"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:495"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:499"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:498"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:500"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:499"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:498"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:501"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:505"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:504"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:508"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:515"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:509"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:512"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:511"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:482,1"
      Dst: "[java.util.Arrays].toString(byte[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:482,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:484,1"
      Dst: "[java.util.Arrays].toString(short[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:486,1"
      Dst: "[java.util.Arrays].toString(int[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:488,1"
      Dst: "[java.util.Arrays].toString(long[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:490,1"
      Dst: "[java.util.Arrays].toString(float[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:492,1"
      Dst: "[java.util.Arrays].toString(double[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:494,1"
      Dst: "[java.util.Arrays].toString(boolean[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:496,1"
      Dst: "[java.util.Arrays].toString(char[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:499,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:500,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:502,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:506,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:514,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:514,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 29
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 581
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:582"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:582"
        BranchSideFuncs:
        - "createDejaVu()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:583,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 587
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Collections].newSetFromMap(java.util.Map)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:588,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:588,1"
      Dst: "[java.util.Collections].newSetFromMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 640
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:641"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:644"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:643"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 591
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:592,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:593,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 527
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[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()"
    functionUses: 1
    ICount: 38
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:529"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:527"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:530"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:534"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:533"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:537"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:549"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:548"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:538"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:541"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:540"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:528,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:529,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:531,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:532,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:535,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:543,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:544,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:545,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:545,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 559
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 31
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:561"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:560"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:559"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:562"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:566"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:565"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:569"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:577"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:570"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:573"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:572"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:560,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:561,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:563,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:564,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:567,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:575,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:575,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 599
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    - "[net.jsign.log4j.status.StatusData].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].toString()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher].toString()"
    - "[net.jsign.poi.util.ByteField].toString()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    - "[net.jsign.poi.hpsf.ClassID].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].toString()"
    - "[net.jsign.log4j.message.ReusableObjectMessage].toString()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].toString()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].toString()"
    - "[net.jsign.log4j.message.ReusableParameterizedMessage].toString()"
    - "[net.jsign.commons.cli.OptionGroup].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].toString()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toString()"
    - "[net.jsign.commons.io.filefilter.OrFileFilter].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.filefilter.NotFileFilter].toString()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].toString()"
    - "[net.jsign.poi.util.IntegerField].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].toString()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].toString()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].toString()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].toString()"
    - "[net.jsign.msi.MSIStreamName].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].toString()"
    - "[net.jsign.commons.io.CloseableURLConnection].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement].toString()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].toString()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].toString()"
    - "[net.jsign.log4j.Level].toString()"
    - "[net.jsign.log4j.message.SimpleMessage].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeReference].toString()"
    - "[net.jsign.commons.cli.Option].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMPacketCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMPacketCipher].toString()"
    - "[net.jsign.jca.TLV].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.commons.io.filefilter.FalseFileFilter].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].toString()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.commons.io.build.AbstractOrigin].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].toString()"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - "[net.jsign.commons.codec.binary.Hex].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].toString()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].toString()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null].toString()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toString()"
    - "[net.jsign.log4j.message.ParameterizedMessage].toString()"
    - "[net.jsign.commons.io.ByteOrderMark].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].toString()"
    - "[net.jsign.commons.io.filefilter.TrueFileFilter].toString()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTRPacketCipher].toString()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].toString()"
    - "[net.jsign.json-io.util.io.JsonObject].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].toString()"
    - "[net.jsign.commons.io.file.Counters$NoopCounter].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.log4j.spi.Provider].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[net.jsign.commons.io.input.CharSequenceReader].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    - "[net.jsign.log4j.message.StringFormattedMessage].toString()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].toString()"
    - "[net.jsign.commons.cli.Options].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCFBPacketCipher].toString()"
    - "[net.jsign.commons.io.IOCase].toString()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].toString()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toString()"
    - "[net.jsign.log4j.message.ObjectMessage].toString()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCTRPacketCipher].toString()"
    - "[net.jsign.commons.io.input.BoundedInputStream].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].toString()"
    - "[net.jsign.poi.util.LongField].toString()"
    - "[net.jsign.poi.util.ShortField].toString()"
    - "[net.jsign.commons.io.RandomAccessFileMode].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].toString()"
    - "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 167
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:600,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:600,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:602,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 606
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:613"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:617"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:607,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:608,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:610,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:611,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:611,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:613,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[java.lang.String].length()"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:263"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:262,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:266,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:271,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessage(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:232"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:232"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:242"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:248"
        BranchSideFuncs:
        - "formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:247"
        BranchSideFuncs:
        - "formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:227,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:235,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:233,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:243,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:248,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingNoEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[java.lang.String].length()"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:263"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:262,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:266,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:271,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].formatMessageContainingEscapes(java.lang.StringBuilder,java.lang.String,java.lang.Object[],int,net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 282
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.Object[]"
    - "int"
    - "net.jsign.log4j.message.ParameterFormatter$MessagePatternAnalysis"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.String].length()"
    functionUses: 1
    ICount: 21
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:285"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:292"
        BranchSideFuncs:
        - "copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:284,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:287,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:288,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:293,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].copyMessagePatternContainingEscapes(java.lang.StringBuilder,java.lang.String,int,int)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:304"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:330"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:306"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:315"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:314"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:307"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:315"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:326"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:321"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:305,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:312,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:318,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:318,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:319,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].deepToString(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Integer].toString(int)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.Long].toString(long)"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].toString(double)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Boolean].toString(boolean)"
    - "[java.lang.Character].charValue()"
    - "[java.lang.Character].toString(char)"
    - "[java.lang.Short].shortValue()"
    - "[java.lang.Short].toString(short)"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.Float].toString(float)"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.Byte].toString(byte)"
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:351"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:355"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:354"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:355"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:358"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:361"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:364"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:363"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:364"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:367"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:366"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:367"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:370"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:370"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:373"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:372"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:373"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:376"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:375"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:376"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:379"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:378"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:379"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:382"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:359,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:359,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:362,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:362,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:365,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:365,1"
      Dst: "[java.lang.Double].toString(double)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:368,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:368,1"
      Dst: "[java.lang.Boolean].toString(boolean)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:371,1"
      Dst: "[java.lang.Character].charValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:371,1"
      Dst: "[java.lang.Character].toString(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:374,1"
      Dst: "[java.lang.Short].shortValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:374,1"
      Dst: "[java.lang.Short].toString(short)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:377,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:377,1"
      Dst: "[java.lang.Float].toString(float)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:380,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:380,1"
      Dst: "[java.lang.Byte].toString(byte)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:382,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:383,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:384,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 21
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:406,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:406,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 430
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    - "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    functionUses: 5
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:431"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:434"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:433"
        BranchSideFuncs:
        - "isMaybeRecursive(java.lang.Object)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:434"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:437"
        BranchSideFuncs:
        - "appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:436"
        BranchSideFuncs:
        - "tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:431,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:434,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:435,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:437,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendSpecialTypes(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 441
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    - "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:442"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:441"
        BranchSideFuncs:
        - "appendDate(java.lang.Object,java.lang.StringBuilder)"
        - "appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:442"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:441"
        BranchSideFuncs:
        - "appendDate(java.lang.Object,java.lang.StringBuilder)"
        - "appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:442,1"
      Dst: "[net.jsign.log4j.util.StringBuilders].appendSpecificTypes(java.lang.StringBuilder,java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:442,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendDate(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 445
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Date].toInstant()"
    - "[java.time.format.DateTimeFormatter].format(java.time.temporal.TemporalAccessor)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:446"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:449"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.util.Date].toInstant()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.time.format.DateTimeFormatter].format(java.time.temporal.TemporalAccessor)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:449,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].isMaybeRecursive(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 456
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:457"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:457,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:457,1"
      Dst: "[java.lang.Class].isArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendPotentiallyRecursiveValue(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:465"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:467"
        BranchSideFuncs:
        - "appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:466"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:467"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:469"
        BranchSideFuncs:
        - "appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:469"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:472"
        BranchSideFuncs:
        - "appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:464,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:465,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:466,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:468,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:470,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:472,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendArray(java.lang.Object,java.lang.StringBuilder,java.util.Set,java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 480
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Arrays].toString(byte[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Arrays].toString(short[])"
    - "[java.util.Arrays].toString(int[])"
    - "[java.util.Arrays].toString(long[])"
    - "[java.util.Arrays].toString(float[])"
    - "[java.util.Arrays].toString(double[])"
    - "[java.util.Arrays].toString(boolean[])"
    - "[java.util.Arrays].toString(char[])"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 73
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:481"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:483"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:483"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:485"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:484"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:485"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:487"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:486"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:487"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:489"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:488"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:489"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:491"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:490"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:491"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:493"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:492"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:493"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:495"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:494"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:495"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:499"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:498"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:500"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:499"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:498"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:501"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:505"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:504"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:508"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:515"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:509"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:512"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:511"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:482,1"
      Dst: "[java.util.Arrays].toString(byte[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:482,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:484,1"
      Dst: "[java.util.Arrays].toString(short[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:486,1"
      Dst: "[java.util.Arrays].toString(int[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:488,1"
      Dst: "[java.util.Arrays].toString(long[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:490,1"
      Dst: "[java.util.Arrays].toString(float[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:492,1"
      Dst: "[java.util.Arrays].toString(double[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:494,1"
      Dst: "[java.util.Arrays].toString(boolean[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:496,1"
      Dst: "[java.util.Arrays].toString(char[])"
    - Src: "net.jsign.log4j.message.ParameterFormatter:499,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:500,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:502,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:506,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:514,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:514,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 29
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendMap(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 527
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[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()"
    functionUses: 1
    ICount: 38
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:529"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:527"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:530"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:534"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:533"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:537"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:549"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:548"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:538"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:541"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:540"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:528,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:529,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:531,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:532,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:535,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:537,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:543,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:544,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:545,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:545,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].appendCollection(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 559
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 31
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:561"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:560"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:559"
        BranchSideFuncs:
        - "getOrCreateDejaVu(java.util.Set)"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:562"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:566"
        BranchSideFuncs:
        - "identityToString(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:565"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:569"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:577"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:570"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:573"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:572"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:560,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:561,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:563,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:564,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:567,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:569,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:575,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:575,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].recursiveDeepToString(java.lang.Object,java.lang.StringBuilder,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].getOrCreateDejaVu(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 581
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:582"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:582"
        BranchSideFuncs:
        - "createDejaVu()"
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:583,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 587
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Collections].newSetFromMap(java.util.Map)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:588,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:588,1"
      Dst: "[java.util.Collections].newSetFromMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].cloneDejaVu(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 591
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:592,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].createDejaVu()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:593,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].tryObjectToString(java.lang.Object,java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 599
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    - "[net.jsign.log4j.status.StatusData].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].toString()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher].toString()"
    - "[net.jsign.poi.util.ByteField].toString()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    - "[net.jsign.poi.hpsf.ClassID].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].toString()"
    - "[net.jsign.log4j.message.ReusableObjectMessage].toString()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].toString()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].toString()"
    - "[net.jsign.log4j.message.ReusableParameterizedMessage].toString()"
    - "[net.jsign.commons.cli.OptionGroup].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].toString()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toString()"
    - "[net.jsign.commons.io.filefilter.OrFileFilter].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.filefilter.NotFileFilter].toString()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].toString()"
    - "[net.jsign.poi.util.IntegerField].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].toString()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].toString()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].toString()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].toString()"
    - "[net.jsign.msi.MSIStreamName].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].toString()"
    - "[net.jsign.commons.io.CloseableURLConnection].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement].toString()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].toString()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].toString()"
    - "[net.jsign.log4j.Level].toString()"
    - "[net.jsign.log4j.message.SimpleMessage].toString()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].toString()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeReference].toString()"
    - "[net.jsign.commons.cli.Option].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMPacketCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMPacketCipher].toString()"
    - "[net.jsign.jca.TLV].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.commons.io.filefilter.FalseFileFilter].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].toString()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.commons.io.build.AbstractOrigin].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].toString()"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - "[net.jsign.commons.codec.binary.Hex].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].toString()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].toString()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null].toString()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toString()"
    - "[net.jsign.log4j.message.ParameterizedMessage].toString()"
    - "[net.jsign.commons.io.ByteOrderMark].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].toString()"
    - "[net.jsign.commons.io.filefilter.TrueFileFilter].toString()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTRPacketCipher].toString()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].toString()"
    - "[net.jsign.json-io.util.io.JsonObject].toString()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].toString()"
    - "[net.jsign.commons.io.file.Counters$NoopCounter].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.log4j.spi.Provider].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[net.jsign.commons.io.input.CharSequenceReader].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    - "[net.jsign.log4j.message.StringFormattedMessage].toString()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].toString()"
    - "[net.jsign.commons.cli.Options].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCFBPacketCipher].toString()"
    - "[net.jsign.commons.io.IOCase].toString()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].toString()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toString()"
    - "[net.jsign.log4j.message.ObjectMessage].toString()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCTRPacketCipher].toString()"
    - "[net.jsign.commons.io.input.BoundedInputStream].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toString()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].toString()"
    - "[net.jsign.poi.util.LongField].toString()"
    - "[net.jsign.poi.util.ShortField].toString()"
    - "[net.jsign.commons.io.RandomAccessFileMode].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].toString()"
    - "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 167
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:600,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:600,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:602,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].handleErrorInObjectToString(java.lang.Object,java.lang.StringBuilder,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 606
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.StringBuilder"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:613"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:617"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:607,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:608,1"
      Dst: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:610,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:611,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:611,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:613,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.ParameterFormatter].identityToString(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ParameterFormatter"
    linkageType: null
    functionLinenumber: 640
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ParameterFormatter:641"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:644"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.ParameterFormatter:643"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.log4j.message.ParameterFormatter:644,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getSalt()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getIterationCount()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].isDefaultPrf()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getPrf()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 110
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 121
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addExt(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 1
    ICount: 59
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "sub(int,int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 84
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 1
    ICount: 59
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].flattenOctetStrings(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].<init>(byte[],net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 30
    ICount: 47
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "encodedLength(boolean,int)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - "[java.lang.Math].min(int,int)"
    functionUses: 33
    ICount: 32
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "write(int)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
        - "writeIdentifier(boolean,int)"
        - "writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
        - "write(int)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 4
    ICount: 10
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 154
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 343
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 37
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat].zero64(int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].zero64(int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "<init>(byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1UTF8String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1UTF8String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1UTF8String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1UTF8String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1UTF8String[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1UTF8String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getStringAtUTF8(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1UTF8String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].createPSSParams(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 9
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 2
    ICount: 37
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "toUpperCase(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$X448].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$X448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$X448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$25:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Sequence$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$1].fromImplicitConstructed(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].decomposeScalar(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getSplitParams()"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].decomposeScalar(net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters,java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getSplitParams()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].decomposeScalar(net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getSplitParams()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].getPointMap()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPointMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].hasEfficientPointMap()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERUTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERUTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERUTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.util.Date)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERUTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERUTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERUTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.NugetSignableProvider].<init>()"
    functionSourceFile: "net.jsign.spi.NugetSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.NugetSignableProvider:37,1"
      Dst: "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.NugetSignableProvider].create(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.spi.NugetSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.Signable"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.nuget.NugetFile].<init>(java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.NugetSignableProvider:42,1"
      Dst: "[net.jsign.nuget.NugetFile].<init>(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.nuget.NugetFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.nuget.NugetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipFile].<init>(java.io.File)"
    - "[net.jsign.nuget.NugetFile].verifyPackage()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.nuget.NugetFile:63,1"
      Dst: "[net.jsign.zip.ZipFile].<init>(java.io.File)"
    - Src: "net.jsign.nuget.NugetFile:64,1"
      Dst: "[net.jsign.nuget.NugetFile].verifyPackage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].<init>()"
    - "[net.jsign.zip.CentralDirectory].read(java.nio.channels.SeekableByteChannel)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.zip.ZipFile:69,1"
      Dst: "[net.jsign.zip.CentralDirectory].<init>()"
    - Src: "net.jsign.zip.ZipFile:70,1"
      Dst: "[net.jsign.zip.CentralDirectory].read(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory].<init>()"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.EndOfCentralDirectoryRecord].<init>()"
    - "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].<init>()"
    - "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 3
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:39,1"
      Dst: "[net.jsign.zip.EndOfCentralDirectoryRecord].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:40,1"
      Dst: "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:41,1"
      Dst: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:47,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.EndOfCentralDirectoryRecord].<init>()"
    functionSourceFile: "net.jsign.zip.EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:43,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].<init>()"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:37,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].<init>()"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:44,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory].read(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.EndOfCentralDirectoryRecord].load(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    - "[net.jsign.zip.CentralDirectoryFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 76
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectory:51"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:56"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:57"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:74"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:75"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:74"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:74"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:80"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:50,1"
      Dst: "[net.jsign.zip.EndOfCentralDirectoryRecord].load(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.zip.CentralDirectory:52,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectory:59,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.CentralDirectory:59,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.CentralDirectory:60,1"
      Dst: "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.CentralDirectory:64,1"
      Dst: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.CentralDirectory:74,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.zip.CentralDirectory:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectory:75,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.zip.CentralDirectory:75,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.CentralDirectory:81,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:82,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.CentralDirectory:83,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - Src: "net.jsign.zip.CentralDirectory:83,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.zip.EndOfCentralDirectoryRecord].load(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.EndOfCentralDirectoryRecord].locate(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.zip.EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.zip.EndOfCentralDirectoryRecord:58"
      Branch Sides:
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:61"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:60"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
    Callsites:
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:58,1"
      Dst: "[net.jsign.zip.EndOfCentralDirectoryRecord].locate(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:59,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:61,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:62,1"
      Dst: "[net.jsign.zip.EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:63,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.EndOfCentralDirectoryRecord].locate(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.Math].max(long,long)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.nio.ByteBuffer].rewind()"
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.EndOfCentralDirectoryRecord:112"
      Branch Sides:
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:123"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:122"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.EndOfCentralDirectoryRecord:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:108,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:108,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:109,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:109,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:113,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:114,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:115,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:116,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:120,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.zip.EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 1
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.EndOfCentralDirectoryRecord:72"
      Branch Sides:
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:75"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:74"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.EndOfCentralDirectoryRecord:82"
      Branch Sides:
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:86"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.EndOfCentralDirectoryRecord:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:67,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:67,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:68,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:69,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:71,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:75,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.EndOfCentralDirectoryRecord:84,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryLocator].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getLong()"
    functionUses: 1
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:53"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:56"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:48,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:48,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:49,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:50,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:52,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:54,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryLocator:57,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].getLong()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 1
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:64"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:69"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:84"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:87"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:61,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:61,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:62,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:63,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:64,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:65,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:68,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:72,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:85,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:89,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:56,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:77,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ExtraField].parseAll(java.nio.ByteBuffer,boolean,boolean,boolean,boolean)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 1
    ICount: 142
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:84"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:87"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:89"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:108"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:112"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:111"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:112"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:122"
        BranchSideFuncs:
        - "parseAll(java.nio.ByteBuffer,boolean,boolean,boolean,boolean)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:122"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:128"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:128"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:128"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:128"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:81,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:81,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:82,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:83,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:84,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:85,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:88,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:90,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:90,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:90,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:90,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:92,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:110,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:116,1"
      Dst: "[net.jsign.zip.ExtraField].parseAll(java.nio.ByteBuffer,boolean,boolean,boolean,boolean)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:128,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:128,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.zip.ExtraField].parseAll(java.nio.ByteBuffer,boolean,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.zip.ExtraField"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 5
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ExtraField].<init>()"
    - "[net.jsign.zip.ExtraField].read(java.nio.ByteBuffer)"
    - "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(boolean,boolean,boolean,boolean)"
    - "[net.jsign.zip.Zip64ExtendedInfoExtraField].parse()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.zip.ExtraField:74"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ExtraField:87"
        BranchSideFuncs:
        - "<init>()"
        - "read(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.zip.ExtraField:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ExtraField:77"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ExtraField:84"
        BranchSideFuncs:
        - "<init>(boolean,boolean,boolean,boolean)"
        - "parse()"
      - BranchSide: "net.jsign.zip.ExtraField:83"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.zip.ExtraField:73,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.zip.ExtraField:74,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.ExtraField:75,1"
      Dst: "[net.jsign.zip.ExtraField].<init>()"
    - Src: "net.jsign.zip.ExtraField:76,1"
      Dst: "[net.jsign.zip.ExtraField].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.ExtraField:78,1"
      Dst: "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(boolean,boolean,boolean,boolean)"
    - Src: "net.jsign.zip.ExtraField:81,1"
      Dst: "[net.jsign.zip.Zip64ExtendedInfoExtraField].parse()"
    - Src: "net.jsign.zip.ExtraField:82,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.ExtraField:82,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.zip.ExtraField].<init>()"
    functionSourceFile: "net.jsign.zip.ExtraField"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ExtraField:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ExtraField].read(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.zip.ExtraField"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.Zip64ExtendedInfoExtraField].parse()"
    - "[net.jsign.zip.ExtraField].parse()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].get(byte[])"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.zip.ExtraField:37"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ExtraField:40"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.ExtraField:39"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ExtraField:40"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ExtraField:45"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.ExtraField:44"
        BranchSideFuncs:
        - "parse()"
    Callsites:
    - Src: "net.jsign.zip.ExtraField:35,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.ExtraField:37,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.ExtraField:38,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.ExtraField:42,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "net.jsign.zip.ExtraField:45,1"
      Dst: "[net.jsign.zip.ExtraField].parse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.zip.ExtraField].parse()"
    functionSourceFile: "net.jsign.zip.ExtraField"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(boolean,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.zip.Zip64ExtendedInfoExtraField"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ExtraField].<init>()"
    functionUses: 1
    ICount: 28
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:48"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:46"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:45"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:49"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:48"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:47"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:50"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:49"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:48"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:51"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:50"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:46,1"
      Dst: "[net.jsign.zip.ExtraField].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.zip.Zip64ExtendedInfoExtraField].parse()"
    functionSourceFile: "net.jsign.zip.Zip64ExtendedInfoExtraField"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].getLong()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:67"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:70"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:72"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:73"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:76"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:81"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:65,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:65,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:68,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:77,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:80,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.nuget.NugetFile].verifyPackage()"
    functionSourceFile: "net.jsign.nuget.NugetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.nuget.NugetFile:79"
      Branch Sides:
      - BranchSide: "net.jsign.nuget.NugetFile:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.nuget.NugetFile:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.nuget.NugetFile:79,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.nuget.NugetFile:80,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineGetEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineGetEncoded()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineGetEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].localEngineGetParameterSpec(java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.AlgorithmParameterSpec"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIV()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIterations()"
    - "[java.math.BigInteger].intValue()"
    - "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIV()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIterations()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIterations()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(byte[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams].engineToString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].<init>(net.jsign.bouncycastle.asn1.DERSequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DERSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,net.jsign.bouncycastle.asn1.DERTaggedObject)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    - "net.jsign.bouncycastle.asn1.DERTaggedObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,net.jsign.bouncycastle.asn1.DERTaggedObject)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,net.jsign.bouncycastle.asn1.DERTaggedObject)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,int,net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,int,net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Primitive,int,net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].buildSequence()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    functionUses: 4
    ICount: 29
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERExternal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERExternal:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "toDERObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERExternal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERExternal:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "toDERObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERExternal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERExternal:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "toDERObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERExternal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERExternal:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "toDERObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].toDERObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternal].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 28
    ICount: 21
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 4
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 1
    ICount: 11
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].forAll(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.stream.Stream"
    - "net.jsign.commons.io.function.IOConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOStreams$lambda_forAll_0__45].bootstrap$()"
    - "[net.jsign.commons.io.function.IOStreams].forAll(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:36,1"
      Dst: "[net.jsign.commons.io.function.IOStreams$lambda_forAll_0__45].bootstrap$()"
    - Src: "net.jsign.commons.io.function.IOStreams:36,1"
      Dst: "[net.jsign.commons.io.function.IOStreams].forAll(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].forAll(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.stream.Stream"
    - "net.jsign.commons.io.function.IOConsumer"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOStream].adapt(java.util.stream.Stream)"
    - "[net.jsign.commons.io.function.IOStreams$init__46].bootstrap$()"
    - "[net.jsign.commons.io.function.IOStream].forAll(net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStream].adapt(java.util.stream.Stream)"
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStreams$init__46].bootstrap$()"
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStream].forAll(net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].forAll(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.stream.Stream"
    - "net.jsign.commons.io.function.IOConsumer"
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOStream].adapt(java.util.stream.Stream)"
    - "[net.jsign.commons.io.function.IOStreams$init__46].bootstrap$()"
    - "[net.jsign.commons.io.function.IOStream].forAll(net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStream].adapt(java.util.stream.Stream)"
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStreams$init__46].bootstrap$()"
    - Src: "net.jsign.commons.io.function.IOStreams:42,1"
      Dst: "[net.jsign.commons.io.function.IOStream].forAll(net.jsign.commons.io.function.IOConsumer,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].forEach(java.util.stream.Stream,net.jsign.commons.io.function.IOConsumer)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.stream.Stream"
    - "net.jsign.commons.io.function.IOConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOStreams].toIOConsumer(net.jsign.commons.io.function.IOConsumer)"
    - "[net.jsign.commons.io.function.IOStreams].of(java.util.stream.Stream)"
    - "[net.jsign.commons.io.function.IOStreams$lambda_forEach_1__47].bootstrap$(net.jsign.commons.io.function.IOConsumer)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:47,1"
      Dst: "[net.jsign.commons.io.function.IOStreams].toIOConsumer(net.jsign.commons.io.function.IOConsumer)"
    - Src: "net.jsign.commons.io.function.IOStreams:48,1"
      Dst: "[net.jsign.commons.io.function.IOStreams].of(java.util.stream.Stream)"
    - Src: "net.jsign.commons.io.function.IOStreams:48,1"
      Dst: "[net.jsign.commons.io.function.IOStreams$lambda_forEach_1__47].bootstrap$(net.jsign.commons.io.function.IOConsumer)"
    - Src: "net.jsign.commons.io.function.IOStreams:48,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].toIOConsumer(net.jsign.commons.io.function.IOConsumer)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.function.IOConsumer"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOConsumer].noop()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:83"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:83,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].noop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].of(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].empty()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:65,1"
      Dst: "[java.util.stream.Stream].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].of(java.lang.Iterable)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].empty()"
    - "[java.lang.Iterable].spliterator()"
    - "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:61"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:61,1"
      Dst: "[java.util.stream.Stream].empty()"
    - Src: "net.jsign.commons.io.function.IOStreams:61,1"
      Dst: "[java.lang.Iterable].spliterator()"
    - Src: "net.jsign.commons.io.function.IOStreams:61,1"
      Dst: "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].of(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].empty()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:65,1"
      Dst: "[java.util.stream.Stream].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].of(java.lang.Object[])"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].empty()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:79"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:79,1"
      Dst: "[java.util.stream.Stream].empty()"
    - Src: "net.jsign.commons.io.function.IOStreams:79,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].toIOConsumer(net.jsign.commons.io.function.IOConsumer)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.function.IOConsumer"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOConsumer].noop()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.function.IOStreams:83"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.function.IOStreams:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:83,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].noop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.function.IOStreams].<init>()"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.function.IOStreams:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].lambda$forEach$1(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.Erase].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.IOStreams:48,1"
      Dst: "[net.jsign.commons.io.function.Erase].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Erase].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Erase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    - "[net.jsign.commons.io.function.Erase].rethrow(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Erase:58,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Erase:60,1"
      Dst: "[net.jsign.commons.io.function.Erase].rethrow(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.function.Erase].rethrow(java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.io.function.Erase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.RuntimeException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.IOStreams].lambda$forAll$0(java.lang.Integer,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.function.IOStreams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.IOException"
    argCount: 2
    argTypes:
    - "java.lang.Integer"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyFactory].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyFactory"
    linkageType: null
    functionLinenumber: -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.jsign.poi.poifs.property.PropertyFactory:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyFactory].convertToProperties(byte[],java.util.List)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyFactory"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    - "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyFactory:46"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyFactory:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyFactory:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:50,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:50,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:49,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:56,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:62,1"
      Dst: "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:67,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:40,1"
      Dst: "[java.util.HashSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:58,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:46,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$2].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$2"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.MetaUtils$2:598,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$2].compare(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[net.jsign.json-io.util.io.MetaUtils].access$0(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Modifier].isProtected(int)"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:605"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:609"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:610"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:614"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:612"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:611"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:615"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:619"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:617"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:616"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:620"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:624"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:622"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:602,1"
      Dst: "[java.lang.reflect.Constructor].getModifiers()"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:607,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].access$0(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:610,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:615,1"
      Dst: "[java.lang.reflect.Modifier].isProtected(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:620,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 18
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].access$0(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].compareConstructors(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:687,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].compareConstructors(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].compareConstructors(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:691"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:696"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:703"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:696"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:698"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:699"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:689,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:702,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:702,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$2].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils$2].compare(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:1,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils$2].compare(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$2].compare(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.reflect.Constructor"
    - "java.lang.reflect.Constructor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].getModifiers()"
    - "[net.jsign.json-io.util.io.MetaUtils].access$0(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.lang.reflect.Modifier].isProtected(int)"
    - "[java.lang.reflect.Modifier].isPrivate(int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:605"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:609"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:610"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:614"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:612"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:611"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:615"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:619"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:617"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:616"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:620"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:624"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$2:622"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$2:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:602,1"
      Dst: "[java.lang.reflect.Constructor].getModifiers()"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:607,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].access$0(java.lang.reflect.Constructor,java.lang.reflect.Constructor)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:610,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:615,1"
      Dst: "[java.lang.reflect.Modifier].isProtected(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$2:620,1"
      Dst: "[java.lang.reflect.Modifier].isPrivate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 18
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512KDF].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512KDF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - "[net.jsign.bouncycastle.crypto.generators.KDF2BytesGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.KDF2BytesGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512KDF:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].getDLSubStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.DLOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 196
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-2"
        BranchSideFuncs:
        - "toASN1Primitive()"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 91
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 4
    ICount: 11
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-2"
        BranchSideFuncs:
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config].<init>(net.jsign.bouncycastle.math.ec.ECCurve,int,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECMultiplier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "int"
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    - "net.jsign.bouncycastle.math.ec.ECMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config].setCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config].setMultiplier(net.jsign.bouncycastle.math.ec.ECMultiplier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config].create()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].defineCurveWithOID(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].defineCurveAlias(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].getNames()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.modes.CCMModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.NativeCCMProvider].createCCM()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.NativeCCMProvider].createCCM()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getMacSize(boolean,int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 51
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getMacSize(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getMacSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].reset()"
    functionUses: 2
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 141
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CTRModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCTR()"
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "createCTR()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    functionUses: 2
    ICount: 107
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 1
    ICount: 23
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-2"
        BranchSideFuncs:
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "getBlockSize()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CBCModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCBC()"
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCBC()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "createCBC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCBC()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 2
    ICount: 17
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedTextLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].reset()"
    functionUses: 2
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].reset()"
    functionUses: 2
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 141
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 141
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "calculateMac(byte[],int,int,byte[])"
        - "newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].calculateMac(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    functionUses: 2
    ICount: 107
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
        - "getAssociatedTextLength()"
        - "getMacSize()"
        - "getBuffer()"
        - "update(byte)"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "hasAssociatedText()"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getMacSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].hasAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs:
        - "getAssociatedTextLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].getAssociatedTextLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.hssf.OldExcelFormatException"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.OldFileFormatException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.hssf.OldExcelFormatException:23,1"
      Dst: "[net.jsign.poi.OldFileFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].setProvider(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].build(char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.PEMDecryptorProvider"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder,char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder,char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].access$000(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Properties$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Properties$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Properties$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Properties$2:-1,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$ClassWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$ClassWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$ClassWriter:146,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$ClassWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$ClassWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$ClassWriter:150,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.Writers$ClassWriter:151,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$ClassWriter:152,1"
      Dst: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers:404,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2484"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2509"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2480"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2481"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2477,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2478,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2482,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2489,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[net.jsign.json-io.util.io.Writers$ClassWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$ClassWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$ClassWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$ClassWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$ClassWriter:159,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.Writers$ClassWriter:159,1"
      Dst: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers:404,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.input.BOMInputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:216,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$Builder:128,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].access$000()"
    - "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:241,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$Builder].access$000()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:241,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].access$000()"
    - "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:255,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$Builder].access$000()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:255,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "boolean"
    - "net.jsign.commons.io.ByteOrderMark[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].sort(java.util.Comparator)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:272"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:275"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:271,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:272,1"
      Dst: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - Src: "net.jsign.commons.io.input.BOMInputStream:273,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:276,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.commons.io.input.BOMInputStream:278,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,net.jsign.commons.io.ByteOrderMark[])"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "net.jsign.commons.io.ByteOrderMark[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:293,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].<init>(java.io.InputStream,boolean,net.jsign.commons.io.ByteOrderMark[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].find()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$matches__34].bootstrap$(net.jsign.commons.io.input.BOMInputStream)"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].findFirst()"
    - "[java.util.Optional].orElse(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$matches__34].bootstrap$(net.jsign.commons.io.input.BOMInputStream)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.stream.Stream].findFirst()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.Optional].orElse(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$matches__34].bootstrap$(net.jsign.commons.io.input.BOMInputStream)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$matches__34"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.BOMInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$matches__34].<init>(net.jsign.commons.io.input.BOMInputStream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$matches__34:-1,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$matches__34].<init>(net.jsign.commons.io.input.BOMInputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream$matches__34].<init>(net.jsign.commons.io.input.BOMInputStream)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream$matches__34"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.BOMInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream$matches__34:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 3
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].find()"
    - "[java.util.List].get(int)"
    - "[java.io.InputStream].read()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:327"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:326"
        BranchSideFuncs:
        - "find()"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:314"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:313"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:329"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:332"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:320,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:327,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].find()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.commons.io.ByteOrderMark].length()"
    functionSourceFile: "net.jsign.commons.io.ByteOrderMark"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].find()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream$matches__34].bootstrap$(net.jsign.commons.io.input.BOMInputStream)"
    - "[java.util.Collection].stream()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.stream.Stream].findFirst()"
    - "[java.util.Optional].orElse(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream$matches__34].bootstrap$(net.jsign.commons.io.input.BOMInputStream)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.stream.Stream].findFirst()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:302,1"
      Dst: "[java.util.Optional].orElse(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOMCharsetName()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    - "[net.jsign.commons.io.ByteOrderMark].getCharsetName()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:348"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:347,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:348,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].getCharsetName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 3
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].find()"
    - "[java.util.List].get(int)"
    - "[java.io.InputStream].read()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:327"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:326"
        BranchSideFuncs:
        - "find()"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:314"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:313"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:329"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:332"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:320,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:327,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].find()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.commons.io.ByteOrderMark].getCharsetName()"
    functionSourceFile: "net.jsign.commons.io.ByteOrderMark"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].hasBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:359"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:359,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 3
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].find()"
    - "[java.util.List].get(int)"
    - "[java.io.InputStream].read()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:327"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:326"
        BranchSideFuncs:
        - "find()"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:314"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:313"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:329"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:332"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:320,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:327,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].find()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].hasBOM(net.jsign.commons.io.ByteOrderMark)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.ByteOrderMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:374"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:377"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:376"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:374,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:375,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:375,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:375,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:375,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:375,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:377,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:377,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 3
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].find()"
    - "[java.util.List].get(int)"
    - "[java.io.InputStream].read()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:327"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:326"
        BranchSideFuncs:
        - "find()"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:314"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:313"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:329"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:332"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:320,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:327,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].find()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].mark(int)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].mark(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:389"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:388"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:390,1"
      Dst: "[java.io.InputStream].mark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].matches(net.jsign.commons.io.ByteOrderMark)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.ByteOrderMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.ByteOrderMark].get(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:405"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:406"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:405"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:404"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:405,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:406,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.ByteOrderMark].length()"
    functionSourceFile: "net.jsign.commons.io.ByteOrderMark"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.ByteOrderMark].get(int)"
    functionSourceFile: "net.jsign.commons.io.ByteOrderMark"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].read()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 421
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[java.io.InputStream].read()"
    functionUses: 29
    ICount: 8
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:423"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:421"
        BranchSideFuncs:
        - "readFirstBytes()"
        - "read()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:422,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:423,1"
      Dst: "[java.io.InputStream].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 478
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:480"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:479,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 3
    returnType: "net.jsign.commons.io.ByteOrderMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.commons.io.ByteOrderMark].length()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].find()"
    - "[java.util.List].get(int)"
    - "[java.io.InputStream].read()"
    functionUses: 1
    ICount: 45
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:327"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:326"
        BranchSideFuncs:
        - "find()"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:314"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:313"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:328"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:336"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:329"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:332"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.io.input.BOMInputStream:316,1"
      Dst: "[net.jsign.commons.io.ByteOrderMark].length()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:320,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:327,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].find()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].read(byte[])"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 436
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:437,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 454
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 22
    ICount: 31
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:457"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:465"
        BranchSideFuncs:
        - "readFirstBytes()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:457"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:465"
        BranchSideFuncs:
        - "readFirstBytes()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:459"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:457"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:466"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:466"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:458,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:465,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 478
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:480"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:479,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 454
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 22
    ICount: 31
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:457"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:465"
        BranchSideFuncs:
        - "readFirstBytes()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:457"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:465"
        BranchSideFuncs:
        - "readFirstBytes()"
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:459"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:457"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:466"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:464"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:466"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:458,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:465,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 478
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:480"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:479,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].reset()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:492"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:496"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:496,1"
      Dst: "[java.io.InputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].skip(long)"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 5
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].skip(long)"
    - "[net.jsign.commons.io.input.BOMInputStream].skip(long)"
    - "[net.jsign.commons.io.input.ProxyInputStream].skip(long)"
    - "[net.jsign.commons.io.input.BoundedInputStream].skip(long)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].skip(long)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].skip(long)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].skip(long)"
    - "[java.io.InputStream].skip(long)"
    functionUses: 3
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:511"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:514"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:513"
        BranchSideFuncs:
        - "skip(long)"
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:511"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:514"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BOMInputStream:513"
        BranchSideFuncs:
        - "skip(long)"
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:511,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    - Src: "net.jsign.commons.io.input.BOMInputStream:514,1"
      Dst: "[java.io.InputStream].skip(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.BOMInputStream].readFirstBytes()"
    functionSourceFile: "net.jsign.commons.io.input.BOMInputStream"
    linkageType: null
    functionLinenumber: 478
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BOMInputStream:480"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BOMInputStream:479,1"
      Dst: "[net.jsign.commons.io.input.BOMInputStream].getBOM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getJ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getL()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 5
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].parseBytes(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].parseNonEmptyASN1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].parseBytes(byte[])"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].parseBytes(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getVersion()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getVersion()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getHolder()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getHolder()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getHolder()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getHolder()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Holder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 111
    ICount: 36
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.Holder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuer()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getNotBefore()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    - "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getNotAfter()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    - "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.Attribute[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Attribute:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Attribute:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Attribute:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getAttributes(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Attribute[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Attribute:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Attribute:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Attribute].getAttrType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getIssuerUniqueID()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuerUniqueID()"
    - "[net.jsign.bouncycastle.cert.CertUtils].bitStringToBoolean(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuerUniqueID()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].bitStringToBoolean(net.jsign.bouncycastle.asn1.ASN1BitString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuerUniqueID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].bitStringToBoolean(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].isValidOn(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    - "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    - "[java.util.Date].before(java.util.Date)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    - "[java.util.Date].after(java.util.Date)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.Date].before(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.util.Date].after(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotBeforeTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].recoverDate(net.jsign.bouncycastle.asn1.ASN1GeneralizedTime)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getNotAfterTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].isSignatureValid(net.jsign.bouncycastle.operator.ContentVerifierProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSignature()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    - "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].encodeTo(java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSignature()"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSignature()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].encodeTo(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSignature()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getSignatureValue()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.io.ObjectInputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getEncoded()"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.util.ProviderUtil].<init>()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    - "[net.jsign.log4j.util.LoaderUtil].findUrlResources(java.lang.String,boolean)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].getClassLoader()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].getUrl()"
    - "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.invoke.MethodHandles].lookup()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:74"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:77"
        BranchSideFuncs:
        - "getClassLoader()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getUrl()"
        - "loadProvider(java.net.URL,java.lang.ClassLoader)"
        - "findUrlResources(java.lang.String,boolean)"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[java.lang.invoke.MethodHandles].lookup()"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].findUrlResources(java.lang.String,boolean)"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getUrl()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getClassLoader()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ProviderUtil].addProvider(net.jsign.log4j.spi.Provider)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:80,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:81,1"
      Dst: "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger$BoundedQueue].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.net.URL].openStream()"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:94"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:101"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "debug(java.lang.String,java.lang.Object)"
        - "<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:95,1"
      Dst: "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - Src: "net.jsign.log4j.util.ProviderUtil:96,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:97,1"
      Dst: "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:100,1"
      Dst: "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 2
    returnType: "java.util.Properties"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[java.util.Properties].<init>()"
    - "[java.util.Properties].load(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 45
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:104"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:103,1"
      Dst: "[java.util.Properties].<init>()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:106,1"
      Dst: "[java.util.Properties].load(java.io.InputStream)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:111,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:113,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:54,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:55,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintWriter].println(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LowLevelLogUtil:42"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:45"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:43,1"
      Dst: "[java.io.PrintWriter].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LowLevelLogUtil:48"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:51"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:49,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:166"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:165"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:166,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.spi.Provider"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Properties"
    - "java.net.URL"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[java.lang.Integer].valueOf(java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.Provider:61"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.Provider:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.Provider:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.Provider:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.Provider:59,1"
      Dst: "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.Provider:60,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.spi.Provider:61,1"
      Dst: "[java.lang.Integer].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ProviderUtil].loadProviders(java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.invoke.MethodHandles].lookup()"
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.util.ProviderUtil$lambda_loadProviders_1__48].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil$add__49].bootstrap$(java.util.Collection)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:109,1"
      Dst: "[java.lang.invoke.MethodHandles].lookup()"
    - Src: "net.jsign.log4j.util.ProviderUtil:109,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ProviderUtil:109,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$lambda_loadProviders_1__48].bootstrap$()"
    - Src: "net.jsign.log4j.util.ProviderUtil:110,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.log4j.util.ProviderUtil:111,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:111,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$add__49].bootstrap$(java.util.Collection)"
    - Src: "net.jsign.log4j.util.ProviderUtil:111,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.lang.Class].toString()"
    functionUses: 1
    ICount: 17
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:145"
        BranchSideFuncs:
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:144"
        BranchSideFuncs:
        - "callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
        - "iterator()"
        - "getLogger()"
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:146,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:146,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:147,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:148,1"
      Dst: "[java.lang.Class].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "java.lang.Iterable"
    argCount: 4
    argTypes:
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.Class"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$1].run()"
    - "[net.jsign.poi.poifs.nio.CleanerUtil$unmapHackImpl__20].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$3].run()"
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class,java.lang.Class[])"
    - "[java.lang.invoke.MethodHandles$Lookup].findStatic(java.lang.Class,java.lang.String,java.lang.invoke.MethodType)"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class)"
    - "[java.lang.invoke.LambdaMetafactory].metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)"
    - "[java.lang.invoke.CallSite].getTarget()"
    - "[java.lang.invoke.MethodHandle].bindTo(java.lang.Object)"
    - "[java.lang.invoke.MethodHandle].invoke()"
    - "[java.lang.System].getSecurityManager()"
    - "[java.security.PrivilegedAction].run()"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class)"
    - "[java.lang.invoke.MethodHandle].invoke(java.security.PrivilegedAction)"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 33
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:122"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:126"
        BranchSideFuncs:
        - "run()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:131"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:135"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:109,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class,java.lang.Class[])"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:108,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].findStatic(java.lang.Class,java.lang.String,java.lang.invoke.MethodType)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:113,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:110,1"
      Dst: "[java.lang.invoke.LambdaMetafactory].metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:117,1"
      Dst: "[java.lang.invoke.CallSite].getTarget()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:118,1"
      Dst: "[java.lang.invoke.MethodHandle].bindTo(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:120,1"
      Dst: "[java.lang.invoke.MethodHandle].invoke()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:122,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:123,1"
      Dst: "[java.security.PrivilegedAction].run()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:126,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:127,1"
      Dst: "[java.lang.invoke.MethodHandle].invoke(java.security.PrivilegedAction)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:132,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:132,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:135,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    functionSourceFile: "net.jsign.log4j.status.StatusLogger"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "net.jsign.log4j.status.StatusLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].loadProviders(java.util.Enumeration,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Enumeration"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:119"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:123"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:120"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:120,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.log4j.util.ProviderUtil:121,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.log4j.util.ProviderUtil:121,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger$BoundedQueue].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.net.URL].openStream()"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:94"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:101"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "debug(java.lang.String,java.lang.Object)"
        - "<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:95,1"
      Dst: "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - Src: "net.jsign.log4j.util.ProviderUtil:96,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:97,1"
      Dst: "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:100,1"
      Dst: "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.ProviderUtil].getProviders()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 8
    returnType: "java.lang.Iterable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:127,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - "[net.jsign.log4j.spi.AbstractLogger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - "[java.util.concurrent.locks.Lock].unlock()"
    - "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:151"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:145,1"
      Dst: "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - Src: "net.jsign.log4j.util.ProviderUtil:148,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - Src: "net.jsign.log4j.util.ProviderUtil:151,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    - Src: "net.jsign.log4j.util.ProviderUtil:154,1"
      Dst: "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.ProviderUtil].<init>()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    - "[net.jsign.log4j.util.LoaderUtil].findUrlResources(java.lang.String,boolean)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].getClassLoader()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].getUrl()"
    - "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.invoke.MethodHandles].lookup()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:74"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:77"
        BranchSideFuncs:
        - "getClassLoader()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getUrl()"
        - "loadProvider(java.net.URL,java.lang.ClassLoader)"
        - "findUrlResources(java.lang.String,boolean)"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[java.lang.invoke.MethodHandles].lookup()"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - Src: "net.jsign.log4j.util.ProviderUtil:70,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    - Src: "net.jsign.log4j.util.ProviderUtil:72,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].findUrlResources(java.lang.String,boolean)"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.ProviderUtil:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getUrl()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getClassLoader()"
    - Src: "net.jsign.log4j.util.ProviderUtil:75,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 5
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:77,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 4
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    - "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].bootstrap$(java.util.Set)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:84"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:91"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:90"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:86"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:90"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:91"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:94"
        BranchSideFuncs:
        - "loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:93"
        BranchSideFuncs:
        - "bootstrap$(java.util.Set)"
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:82,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:82,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:83,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:85,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:87,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:91,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:92,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:94,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].bootstrap$(java.util.Set)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$3].run()"
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.security.PrivilegedAction].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 4
    ICount: 15
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:85"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:90"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:88,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.PrivilegedAction].run()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - "[org.osgi.framework.Bundle].getBundleContext()"
    - "[java.util.Collection].stream()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].empty()"
    functionUses: 1
    ICount: 28
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:62"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:69"
        BranchSideFuncs:
        - "getServiceReferences(java.lang.Class,java.lang.String)"
        - "bootstrap$(org.osgi.framework.BundleContext)"
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:63"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:72"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:59,1"
      Dst: "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:61,1"
      Dst: "[org.osgi.framework.Bundle].getBundleContext()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:73,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:78,1"
      Dst: "[java.util.stream.Stream].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    functionSourceFile: "net.jsign.log4j.status.StatusLogger"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "net.jsign.log4j.status.StatusLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator$getService__16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "org.osgi.framework.BundleContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].<init>(org.osgi.framework.BundleContext)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator$getService__16:-1,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].<init>(org.osgi.framework.BundleContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].<init>(org.osgi.framework.BundleContext)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator$getService__16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.osgi.framework.BundleContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator$getService__16:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].bootstrap$(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].<init>(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15:-1,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13:-1,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$add__14].bootstrap$(java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$add__14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$add__14:-1,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$add__14].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil].findUrlResources(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].<init>(java.lang.ClassLoader,java.net.URL)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.lang.ClassLoader].getResources(java.lang.String)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 2
    ICount: 39
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:264"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:263"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:262"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:266"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:263"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:269"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:281"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:280"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.LoaderUtil:270"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:266"
        BranchSideFuncs:
        - "logException(java.lang.Throwable)"
        - "nextElement()"
        - "hasMoreElements()"
        - "<init>(java.lang.ClassLoader,java.net.URL)"
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:265"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.LoaderUtil:273"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:278"
        BranchSideFuncs:
        - "nextElement()"
        - "<init>(java.lang.ClassLoader,java.net.URL)"
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:264,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:265,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:266,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:268,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.log4j.util.LoaderUtil:272,1"
      Dst: "[java.lang.ClassLoader].getResources(java.lang.String)"
    - Src: "net.jsign.log4j.util.LoaderUtil:273,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.log4j.util.LoaderUtil:274,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.log4j.util.LoaderUtil:274,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$UrlResource].<init>(java.lang.ClassLoader,java.net.URL)"
    - Src: "net.jsign.log4j.util.LoaderUtil:274,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.LoaderUtil:277,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.log4j.util.LoaderUtil$UrlResource].<init>(java.lang.ClassLoader,java.net.URL)"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$UrlResource"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil$UrlResource:291,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LowLevelLogUtil:48"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:51"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:49,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getUrl()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$UrlResource"
    linkageType: null
    functionLinenumber: 300
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil$UrlResource].getClassLoader()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$UrlResource"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].loadProvider(java.net.URL,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].add(java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger$BoundedQueue].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].add(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.net.URL].openStream()"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:94"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:101"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "debug(java.lang.String,java.lang.Object)"
        - "<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "net.jsign.log4j.util.ProviderUtil:93,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].loadClose(java.io.InputStream,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:94,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    - Src: "net.jsign.log4j.util.ProviderUtil:95,1"
      Dst: "[net.jsign.log4j.spi.Provider].<init>(java.util.Properties,java.net.URL,java.lang.ClassLoader)"
    - Src: "net.jsign.log4j.util.ProviderUtil:96,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:97,1"
      Dst: "[net.jsign.log4j.Logger].debug(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ProviderUtil:100,1"
      Dst: "[net.jsign.log4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.ProviderUtil].hasProviders()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].isEmpty()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].isEmpty()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:131"
        BranchSideFuncs:
        - "isEmpty()"
        - "lazyInit()"
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:132,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    - Src: "net.jsign.log4j.util.ProviderUtil:133,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - "[net.jsign.log4j.spi.AbstractLogger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - "[java.util.concurrent.locks.Lock].unlock()"
    - "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:151"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:145,1"
      Dst: "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - Src: "net.jsign.log4j.util.ProviderUtil:148,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - Src: "net.jsign.log4j.util.ProviderUtil:151,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    - Src: "net.jsign.log4j.util.ProviderUtil:154,1"
      Dst: "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lazyInit()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - "[net.jsign.log4j.spi.AbstractLogger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - "[java.util.concurrent.locks.Lock].unlock()"
    - "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:151"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:145,1"
      Dst: "[java.util.concurrent.locks.Lock].lockInterruptibly()"
    - Src: "net.jsign.log4j.util.ProviderUtil:148,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].<init>()"
    - Src: "net.jsign.log4j.util.ProviderUtil:151,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    - Src: "net.jsign.log4j.util.ProviderUtil:154,1"
      Dst: "[net.jsign.log4j.Logger].fatal(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.log4j.util.ProviderUtil:155,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.ProviderUtil].findClassLoader()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 1
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:161,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$3].run()"
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.security.PrivilegedAction].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 4
    ICount: 15
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:85"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:90"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:88,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.PrivilegedAction].run()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:166"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:165"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:166,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lambda$loadProviders$1(net.jsign.log4j.spi.Provider)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.Provider].getVersions()"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:110,1"
      Dst: "[net.jsign.log4j.spi.Provider].getVersions()"
    - Src: "net.jsign.log4j.util.ProviderUtil:110,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.Provider].getVersions()"
    functionSourceFile: "net.jsign.log4j.spi.Provider"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:166"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:165"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:166,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lambda$new$0(net.jsign.log4j.spi.Provider)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.Provider].getVersions()"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[net.jsign.log4j.spi.Provider].getVersions()"
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.Provider].getVersions()"
    functionSourceFile: "net.jsign.log4j.spi.Provider"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ProviderUtil:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ProviderUtil:166"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:165"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ProviderUtil:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:166,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.DHParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.DHParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].getJ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec].getDomainParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.params.DHParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.DHParameterSpec].getP()"
    - "[javax.crypto.spec.DHParameterSpec].getG()"
    - "[javax.crypto.spec.DHParameterSpec].getL()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].getP()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].getL()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 34
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "net.jsign.bouncycastle.asn1.x509.V2Form"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.V2Form"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    - "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    - "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.x509.IssuerSerial,net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    - "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    - "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    functionUses: 1
    ICount: 49
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getBaseCertificateID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.V2Form:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.V2Form:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.V2Form:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:50,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:51,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].getDocument()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:74,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:74,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].isDocumentEntry()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].isDeleteOK()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].getViewableArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].getViewableIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DocumentNode:137"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentNode:140"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentNode:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:136,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:140,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].getShortDescription()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:165,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.GLVMultiplier].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.GLVMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.GLVMultiplier].multiplyPositive(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.GLVMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism].decomposeScalar(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].hasEfficientPointMap()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism].decomposeScalar(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].hasEfficientPointMap()"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].abs()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precomputeWithPointMap(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECPointMap,net.jsign.bouncycastle.math.ec.WNafPreCompInfo,boolean)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].abs()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precomputeWithPointMap(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECPointMap,net.jsign.bouncycastle.math.ec.WNafPreCompInfo,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "byte[]"
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[java.lang.Math].abs(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].abs()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickFixedPoint(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].abs()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickFixedPoint(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickFixedPoint(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECLookupTable].lookupVar(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getOffset()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECLookupTable].lookupVar(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getOffset()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].test(java.lang.Object)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].isNull(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28:-1,1"
      Dst: "[java.util.Objects].isNull(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA1AESCBC192].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA1AESCBC192"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA1AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA1AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA1AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].bootstrap$()"
    functionSourceFile: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    functionSourceFile: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    functionSourceFile: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].apply(java.lang.Object)"
    functionSourceFile: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:192"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:196"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X448].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].bitsOfSecurity()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getServiceName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getPurpose()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getParams()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:87,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:91"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:96"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:95"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:92,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:96,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[java.lang.Object].<init>()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:192,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:195,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:195,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:197,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:91"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:96"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:95"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:92,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:96,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockOffsetIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:104"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:101,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].<init>(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].updateContents(byte[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:115,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:116,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:117,1"
      Dst: "[java.io.OutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:124"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[java.io.OutputStream].<init>()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:233,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:234,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:234,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:236,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:124"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:135,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:136,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:140"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:null"
        BranchSideFuncs:
        - "setNextBlock(int,int)"
        - "claim(int)"
        - "getNextBlock(int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:142,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:143,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 10
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:108"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:140"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:null"
        BranchSideFuncs:
        - "setNextBlock(int,int)"
        - "claim(int)"
        - "getNextBlock(int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:142,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:143,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$200(net.jsign.poi.poifs.filesystem.POIFSStream,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:48,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:140"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:null"
        BranchSideFuncs:
        - "setNextBlock(int,int)"
        - "claim(int)"
        - "getNextBlock(int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:142,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:143,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 122
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat512].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].mul31BothAdd(int,int,int[],int,int[],int[],int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat512].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].mul31BothAdd(int,int,int[],int,int[],int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 84
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].three(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].eight(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].doubleProductFromSquares(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "sub(int,int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1BMPString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1BMPString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1BMPString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1BMPString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1BMPString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1BMPString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1BMPString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedParameters(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedParameters(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedMacParameters(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].generateDerivedKey(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].adjust(byte[],int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer].<init>(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMacSize(boolean,int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initRef(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 50
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "reset()"
        - "getReference()"
        - "getMacSize(boolean,int)"
        - "getKey()"
        - "getNonce()"
        - "initNative(long,boolean,byte[],byte[],byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMacSize(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initRef(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initNative(long,boolean,byte[],byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMacSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initRef(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCCM,long)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCCM,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCCM,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initNative(long,boolean,byte[],byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initRef(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCCM,long)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$CCMRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCCM,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].resetKeepMac()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 1
    ICount: 34
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getOutputSize(int)"
        - "reset()"
        - "getReference()"
        - "<init>(java.lang.String)"
        - "processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
        - "resetKeepMac()"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getOutputSize(int)"
        - "reset()"
        - "getReference()"
        - "<init>(java.lang.String)"
        - "processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
        - "resetKeepMac()"
        - "checkStatus()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getOutputSize(int)"
        - "reset()"
        - "getReference()"
        - "<init>(java.lang.String)"
        - "processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
        - "resetKeepMac()"
        - "checkStatus()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].resetKeepMac()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].resetKeepMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMac(long)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMac(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].resetKeepMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].initNative(long,boolean,byte[],byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].makeInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].processPacket(long,byte[],int,int,byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM:net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs:
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].reset(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].getMacSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].access$000(net.jsign.bouncycastle.crypto.engines.AESNativeCCM)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].access$100(net.jsign.bouncycastle.crypto.engines.AESNativeCCM)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 124
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "hasValue(int)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getVersionNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getStartDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getEndDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubjectPublicKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuerUniqueId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubjectUniqueId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionUses: 110
    ICount: 64
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getPropertyValue(java.lang.String)"
        - "hasValue(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isSetTrue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$F].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$F"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$F:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].convert(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.DERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(byte,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].<init>(byte[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 30
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int,byte)"
    functionUses: 33
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-2"
        BranchSideFuncs:
        - "writeEncodingDL(boolean,int,byte[],int,int,byte)"
        - "writeEncodingDL(boolean,int,byte[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[],int,int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].toDERObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].toDLObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].fromOctetString(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.DERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$FileOrigin].<init>(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractOrigin].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:180,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$FileOrigin].getByteArray(long,int)"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    - "[net.jsign.commons.io.RandomAccessFiles].read(java.io.RandomAccessFile,long,int)"
    - "[java.io.RandomAccessFile].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:187"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:185"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:185"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:185,1"
      Dst: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:186,1"
      Dst: "[net.jsign.commons.io.RandomAccessFiles].read(java.io.RandomAccessFile,long,int)"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:187,1"
      Dst: "[java.io.RandomAccessFile].close()"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:186,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:69,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFiles].read(java.io.RandomAccessFile,long,int)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFiles"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.io.RandomAccessFile"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].seek(long)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.RandomAccessFiles$read__123].bootstrap$(java.io.RandomAccessFile)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFiles:81,1"
      Dst: "[java.io.RandomAccessFile].seek(long)"
    - Src: "net.jsign.commons.io.RandomAccessFiles:82,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.RandomAccessFiles:82,1"
      Dst: "[net.jsign.commons.io.RandomAccessFiles$read__123].bootstrap$(java.io.RandomAccessFile)"
    - Src: "net.jsign.commons.io.RandomAccessFiles:82,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOTriFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2759"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2763"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2762"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2763"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2767"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2766"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2775"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2779"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2778"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2767,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.commons.io.IOUtils:2776,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$FileOrigin].getFile()"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:193,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$FileOrigin].getPath()"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[java.io.File].toPath()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:198,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$FileOrigin:198,1"
      Dst: "[java.io.File].toPath()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,boolean)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream:net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - "[java.io.ByteArrayInputStream].available()"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].size()"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].maxMemory()"
    functionUses: 1
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.ByteArrayInputStream].available()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].maxMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extension"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ReasonFlags].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ReasonFlags].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].<init>(net.jsign.bouncycastle.asn1.ASN1TaggedObject)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ReasonFlags].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ReasonFlags"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ReasonFlags:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ReasonFlags:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getPadBits()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ReasonFlags:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 30
    ICount: 19
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.BERSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERSequence:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 35
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 4
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].toASN1BitString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedBitStrings()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedBitStrings()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1BitString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].toASN1External()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1External"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1External()"
    functionUses: 6
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1External()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].toASN1OctetString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedOctetStrings()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getConstructedOctetStrings()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].toASN1Set()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset(long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 27
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 27
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processWord(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
        - "bigEndianToInt(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    functionUses: 3
    ICount: 197
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    functionUses: 3
    ICount: 197
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionUses: 6
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    functionUses: 3
    ICount: 197
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs:
        - "Theta0(int)"
        - "Ch(int,int,int)"
        - "Maj(int,int,int)"
        - "Sum0(int)"
        - "Theta1(int)"
        - "Sum1(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Ch(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Maj(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Sum1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].Theta1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doCopy(net.jsign.bouncycastle.crypto.digests.SHA224Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 27
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].populateState(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].populateState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].values()"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.RandomAccessFileMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:30,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.RandomAccessFileMode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:30,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:56,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:69,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].toFile()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[java.nio.file.Path].toFile()"
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:69,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:93,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].toString()"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].$values()"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.RandomAccessFileMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$Algorithm].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$Algorithm"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.rfc8032.Ed448$Algorithm:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.digests.GOST3411Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 40
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 113
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 30
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "short[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 14
    ICount: 45
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "update(byte)"
        - "processBlock(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "update(byte)"
        - "processBlock(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "update(byte)"
        - "processBlock(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "update(byte)"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 113
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 30
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 113
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].finish()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "update(byte)"
        - "longToLittleEndian(long,byte[],int)"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "sumByteArray(byte[])"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 113
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "A(byte[])"
        - "E(byte[],byte[],int,byte[],int)"
        - "P(byte[])"
        - "fw(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].P(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].E(byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].A(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].fw(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].finish()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 6
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].finish()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs:
        - "update(byte)"
        - "longToLittleEndian(long,byte[],int)"
        - "processBlock(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].processBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].sumByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyBytesToShort(byte[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cpyShortToBytes(short[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "short[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].getByteLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.digests.GOST3411Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.digests.GOST3411Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.digests.GOST3411Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 40
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 65
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 65
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].<init>(byte[],boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintWriter].println(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LowLevelLogUtil:42"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:45"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:43,1"
      Dst: "[java.io.PrintWriter].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LowLevelLogUtil:48"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:51"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LowLevelLogUtil:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:49,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:54,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:55,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].setOutputStream(java.io.OutputStream)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.io.PrintWriter].<init>(java.io.OutputStream,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:64,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:64,1"
      Dst: "[java.io.PrintWriter].<init>(java.io.OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].setWriter(java.io.Writer)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.io.PrintWriter].<init>(java.io.Writer,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:73,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:73,1"
      Dst: "[java.io.PrintWriter].<init>(java.io.Writer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].<init>()"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.LowLevelLogUtil:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:191,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:110,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:111,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:111,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newDecoder()"
    - "[java.nio.charset.Charset].name()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].newDecoder()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.String].length()"
    - "[java.nio.CharBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].compact()"
    - "[java.nio.CharBuffer].rewind()"
    - "[java.nio.CharBuffer].toString()"
    functionUses: 1
    ICount: 43
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:200"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:203"
        BranchSideFuncs:
        - "newDecoder()"
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:210"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:214"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:211"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:210"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:222"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:200,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:200,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:204,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:206,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:207,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:208,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:208,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:211,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:212,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:214,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:216,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:219,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:221,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:222,1"
      Dst: "[java.nio.CharBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:253,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:253,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:266,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].newDecoder()"
    - "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetDecoder].replaceWith(java.lang.String)"
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:284,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:284,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:285,1"
      Dst: "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:286,1"
      Dst: "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:287,1"
      Dst: "[java.nio.charset.CharsetDecoder].replaceWith(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:283,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "java.nio.charset.CharsetDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:304,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 319
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Writer"
    - "java.nio.charset.CharsetDecoder"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    - "[java.io.OutputStream].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.charset.CharsetDecoder].charset()"
    - "[java.nio.CharBuffer].allocate(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:320,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:237,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[java.nio.charset.CharsetDecoder].charset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:325,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.lang.String,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:338,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.lang.String,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.lang.String,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Writer"
    - "java.lang.String"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:354,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:354,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.Charset,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].close()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.io.Writer].close()"
    functionUses: 20
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:365,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:366,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:367,1"
      Dst: "[java.io.Writer].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 401
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - "[java.nio.charset.CoderResult].isOverflow()"
    - "[java.nio.charset.CoderResult].isUnderflow()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].compact()"
    functionUses: 2
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:406"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:408"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:408"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:402,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:405,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:406,1"
      Dst: "[java.nio.charset.CoderResult].isOverflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:407,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:408,1"
      Dst: "[java.nio.charset.CoderResult].isUnderflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:413,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:417,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.CharBuffer].array()"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.nio.CharBuffer].rewind()"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:392"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:388,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.nio.CharBuffer].array()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:390,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].flush()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[net.jsign.commons.io.output.NullWriter].flush()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].flush()"
    - "[net.jsign.commons.io.output.AppendableWriter].flush()"
    - "[java.io.Writer].flush()"
    functionUses: 6
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:378,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:379,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.CharBuffer].array()"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.nio.CharBuffer].rewind()"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:392"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:388,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.nio.CharBuffer].array()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:390,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.CharBuffer].array()"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.nio.CharBuffer].rewind()"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:392"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:388,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.nio.CharBuffer].array()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:390,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 401
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - "[java.nio.charset.CoderResult].isOverflow()"
    - "[java.nio.charset.CoderResult].isUnderflow()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].compact()"
    functionUses: 2
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:406"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:408"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:408"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:402,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:405,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:406,1"
      Dst: "[java.nio.charset.CoderResult].isOverflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:407,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:408,1"
      Dst: "[java.nio.charset.CoderResult].isUnderflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:413,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:417,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 427
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:428,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 23
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:441"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:448"
        BranchSideFuncs:
        - "processInput(boolean)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:451"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:443,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:444,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:449,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 401
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - "[java.nio.charset.CoderResult].isOverflow()"
    - "[java.nio.charset.CoderResult].isUnderflow()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].compact()"
    functionUses: 2
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:406"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:408"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:408"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:402,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:405,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:406,1"
      Dst: "[java.nio.charset.CoderResult].isOverflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:407,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:408,1"
      Dst: "[java.nio.charset.CoderResult].isUnderflow()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:413,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:417,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.CharBuffer].array()"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.nio.CharBuffer].rewind()"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:392"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:388,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.nio.CharBuffer].array()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:389,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:390,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 23
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:441"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:448"
        BranchSideFuncs:
        - "processInput(boolean)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:451"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:443,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:444,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:449,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 460
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    functionUses: 18
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:461,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 23
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:441"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:448"
        BranchSideFuncs:
        - "processInput(boolean)"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:451"
        BranchSideFuncs:
        - "flushOutput()"
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:442,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:443,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:444,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].processInput(boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:449,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].flushOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].dispose(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].dispose(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.NoOpThreadContextMap:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].clear()"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].containsKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].get(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].getCopy()"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.NoOpThreadContextMap:45,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].put(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.NoOpThreadContextMap].remove(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.NoOpThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getOctetStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 101
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getStatusMessage()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].getNativeStatusMessage()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].getNativeStatusMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].getNativeStatusMessage()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getFeatureSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 2
    ICount: 79
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].isEmpty()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 50
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSeed()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSeed()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeRand()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeRand()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeAES()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeAES()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCM()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCM()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMSIV()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIV()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCBC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCFB()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFB()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCTR()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTR()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA256()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA256()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA224()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA224()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA384()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA384()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA512()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA512()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCCM()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCM()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCBCPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCBCPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCCMPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCCMPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCFBPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCFBPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeCTRPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeCTRPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeGCMSIVPC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeGCMSIVPC()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeMulAcc()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeMulAcc()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHA3()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHA3()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeFeatures"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeFeatures:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeFeatures:-2"
        BranchSideFuncs:
        - "nativeSHAKE()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].nativeSHAKE()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.NativeFeatures:-1,1"
      Dst: "[java.util.logging.Logger].log(java.util.logging.Level,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getVariant()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].getSelectedVariant()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].getSelectedVariant()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].getSelectedVariant()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getVariantSelectionMatrix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[][]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.VariantSelector].getFeatureMatrix()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.VariantSelector].getFeatureMatrix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.VariantSelector].getFeatureMatrix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.VariantSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[][]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - "[java.util.Collections].singleton(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "getNativeFeatureSet()"
        - "isJavaSupportOnly()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "getNativeFeatureSet()"
        - "isJavaSupportOnly()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.Collections].singleton(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 2
    ICount: 79
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].isEmpty()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 50
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getBuildDate()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getNativeBuiltTimeStamp()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getNativeBuiltTimeStamp()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getNativeBuiltTimeStamp()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLibIdentity"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getBuiltTimeStamp()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLibIdentity:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getBuiltTimeStamp()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getBuiltTimeStamp()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLibIdentity"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getLibraryIdent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibraryIdent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLibIdentity"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibIdent()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLibIdentity:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLibIdentity].getLibIdent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeInstalled()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeLibsAvailableForSystem()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultNativeServices].getNativeFeatureSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultNativeServices"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 2
    ICount: 79
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-2"
        BranchSideFuncs:
        - "hasSHA3()"
        - "hasGCMHardwareSupport()"
        - "hasCFBHardwareSupport()"
        - "hasHardwareSHA384()"
        - "hasHardwareSeed()"
        - "hasSHAKE()"
        - "hasHardwareSHA512()"
        - "hasCTRPCHardwareSupport()"
        - "hasCBCPCHardwareSupport()"
        - "hasCBCHardwareSupport()"
        - "hasGCMSIVHardwareSupport()"
        - "hasCCMPCHardwareSupport()"
        - "hasMultiplyAcc()"
        - "hasHardwareSHA224()"
        - "hasHardwareSHA256()"
        - "isJavaSupportOnly()"
        - "hasCFBPCHardwareSupport()"
        - "hasCTRHardwareSupport()"
        - "hasCCMHardwareSupport()"
        - "hasGCMPCHardwareSupport()"
        - "hasAESHardwareSupport()"
        - "hasGCMSIVPCHardwareSupport()"
        - "hasHardwareRand()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isJavaSupportOnly()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSeed()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareRand()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasAESHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA256()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA224()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA384()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasHardwareSHA512()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCBCPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCFBPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasCTRPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasGCMSIVPCHardwareSupport()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasMultiplyAcc()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHA3()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeFeatures].hasSHAKE()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.TreeSet].isEmpty()"
    - Src: "net.jsign.bouncycastle.crypto.DefaultNativeServices:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 50
  - functionName: "[net.jsign.pe.CertificateTableEntry].<init>(net.jsign.pe.PEFile,long)"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.pe.PEFile"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    - "[net.jsign.pe.PEFile].readWord(long,int)"
    - "[net.jsign.pe.PEFile].read(byte[],long,int)"
    - "[java.lang.Object].<init>()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 37
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.pe.CertificateTableEntry:45"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:46"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:45"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.CertificateTableEntry:45"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:48"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:47"
        BranchSideFuncs:
        - "read(byte[],long,int)"
        - "readWord(long,int)"
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.pe.CertificateTableEntry:44,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    - Src: "net.jsign.pe.CertificateTableEntry:45,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.pe.CertificateTableEntry:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.pe.CertificateTableEntry:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.pe.CertificateTableEntry:46,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.pe.CertificateTableEntry:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.pe.CertificateTableEntry:46,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.pe.CertificateTableEntry:48,1"
      Dst: "[net.jsign.pe.PEFile].readWord(long,int)"
    - Src: "net.jsign.pe.CertificateTableEntry:51,1"
      Dst: "[net.jsign.pe.PEFile].read(byte[],long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.pe.CertificateTableEntry].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.CertificateTableEntry].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.pe.CertificateTableEntry:55,1"
      Dst: "[net.jsign.pe.CertificateTableEntry].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.CertificateTableEntry].getSize()"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.CertificateTableEntry].getSignature()"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.CertificateType].getValue()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 43
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.pe.CertificateTableEntry:63"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.CertificateTableEntry:67"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:70"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.CertificateTableEntry:71"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:79"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
      - BranchSide: "net.jsign.pe.CertificateTableEntry:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:63,1"
      Dst: "[net.jsign.pe.CertificateType].getValue()"
    - Src: "net.jsign.pe.CertificateTableEntry:64,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.pe.CertificateTableEntry:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.pe.CertificateTableEntry:64,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.pe.CertificateTableEntry:64,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.pe.CertificateTableEntry:64,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "net.jsign.pe.CertificateTableEntry:73,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.pe.CertificateTableEntry:73,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.pe.CertificateTableEntry:73,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.pe.CertificateTableEntry:73,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.pe.CertificateTableEntry:75,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.pe.CertificateType].getValue()"
    functionSourceFile: "net.jsign.pe.CertificateType"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.SignedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.pe.CertificateTableEntry].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.pe.CertificateTableEntry].pad(byte[],int)"
    - "[net.jsign.pe.CertificateType].getValue()"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:84,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.pe.CertificateTableEntry:84,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.pe.CertificateTableEntry:85,1"
      Dst: "[net.jsign.pe.CertificateTableEntry].pad(byte[],int)"
    - Src: "net.jsign.pe.CertificateTableEntry:87,1"
      Dst: "[net.jsign.pe.CertificateType].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.CertificateTableEntry].pad(byte[],int)"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.pe.CertificateTableEntry:91"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:95,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.pe.CertificateType].getValue()"
    functionSourceFile: "net.jsign.pe.CertificateType"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.CertificateTableEntry].pad(byte[],int)"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.pe.CertificateTableEntry:91"
      Branch Sides:
      - BranchSide: "net.jsign.pe.CertificateTableEntry:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.CertificateTableEntry:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:95,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.pe.CertificateTableEntry].toBytes()"
    functionSourceFile: "net.jsign.pe.CertificateTableEntry"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.CertificateType].getValue()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.nio.ByteBuffer].array()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.CertificateTableEntry:101,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.pe.CertificateTableEntry:102,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.pe.CertificateTableEntry:103,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "net.jsign.pe.CertificateTableEntry:103,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.pe.CertificateTableEntry:104,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.pe.CertificateTableEntry:105,1"
      Dst: "[net.jsign.pe.CertificateType].getValue()"
    - Src: "net.jsign.pe.CertificateTableEntry:106,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "net.jsign.pe.CertificateTableEntry:108,1"
      Dst: "[java.nio.ByteBuffer].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.CertificateType].getValue()"
    functionSourceFile: "net.jsign.pe.CertificateType"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].<init>(net.jsign.bouncycastle.crypto.MultiBlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].<init>(net.jsign.bouncycastle.crypto.MultiBlockCipher)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].<init>(net.jsign.bouncycastle.crypto.MultiBlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].init(java.security.SecureRandom)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.MultiBlockCipher].getMultiBlockSize()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].init(java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.MultiBlockCipher].getMultiBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].getUpdateOutputSize(int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].getUpdateOutputSize(int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.MultiBlockCipher].getMultiBlockSize()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].padCount(byte[])"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.MultiBlockCipher].getMultiBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.MultiBlockCipher].processBlocks(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].padCount(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedMultiBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$1].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$1:58,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$1].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keyfile()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$1:61"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:63"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$1:64"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$1:67"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$1:70"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$1:61,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile()"
    - Src: "net.jsign.KeyStoreType$1:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$1:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$1:62,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$1:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$1:62,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$1:64,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType$1:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.KeyStoreType$1:67,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$1].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreType$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.KeyStore"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].certfile()"
    - "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].keyfile()"
    - "[net.jsign.KeyStoreBuilder].keypass()"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.PrivateKeyUtils].load(java.io.File,java.lang.String)"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].setKeyEntry(java.lang.String,java.security.Key,char[],java.security.cert.Certificate[])"
    - "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$1:88"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:87"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$1:98"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$1:101"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$1:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$1:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$1:80,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    - Src: "net.jsign.KeyStoreType$1:80,1"
      Dst: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - Src: "net.jsign.KeyStoreType$1:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$1:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$1:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.KeyStoreType$1:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$1:82,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType$1:88,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile()"
    - Src: "net.jsign.KeyStoreType$1:88,1"
      Dst: "[net.jsign.KeyStoreBuilder].keypass()"
    - Src: "net.jsign.KeyStoreType$1:88,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$1:88,1"
      Dst: "[net.jsign.PrivateKeyUtils].load(java.io.File,java.lang.String)"
    - Src: "net.jsign.KeyStoreType$1:94,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$1:96,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "net.jsign.KeyStoreType$1:101,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.KeyStoreType$1:101,1"
      Dst: "[java.security.KeyStore].setKeyEntry(java.lang.String,java.security.Key,char[],java.security.cert.Certificate[])"
    - Src: "net.jsign.KeyStoreType$1:103,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.CertificateUtils].getChainComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:44,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.CertificateUtils:45,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.CertificateUtils:46,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - Src: "net.jsign.CertificateUtils:47,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[net.jsign.CertificateUtils].getChainComparator()"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.CertificateUtils:50,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.CertificateUtils].getChainComparator()"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Comparator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.CertificateUtils$getBasicConstraints__53].bootstrap$()"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[net.jsign.CertificateUtils$getNotBefore__54].bootstrap$()"
    - "[java.util.Comparator].reverseOrder()"
    - "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - "[net.jsign.CertificateUtils$getSubjectX500Principal__55].bootstrap$()"
    - "[net.jsign.CertificateUtils$getName__56].bootstrap$()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[net.jsign.CertificateUtils$getBasicConstraints__53].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[net.jsign.CertificateUtils$getNotBefore__54].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[java.util.Comparator].reverseOrder()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[net.jsign.CertificateUtils$getSubjectX500Principal__55].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[net.jsign.CertificateUtils$getName__56].bootstrap$()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keypass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:159,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.System].getenv()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:226"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:237"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:240"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:227,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.lang.System].getenv()"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.KeyStoreBuilder:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:240,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils].load(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.PrivateKeyUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getName()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[net.jsign.PVK].parse(java.io.File,java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.PrivateKeyUtils].readPrivateKeyPEM(java.io.File,char[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PrivateKeyUtils:67"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PrivateKeyUtils:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:69"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PrivateKeyUtils:73"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:70"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PrivateKeyUtils:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils:67,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.PrivateKeyUtils:67,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:68,1"
      Dst: "[net.jsign.PVK].parse(java.io.File,java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:70,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.PrivateKeyUtils:70,1"
      Dst: "[net.jsign.PrivateKeyUtils].readPrivateKeyPEM(java.io.File,char[])"
    - Src: "net.jsign.PrivateKeyUtils:73,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.PrivateKeyUtils:73,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.PrivateKeyUtils:73,1"
      Dst: "[java.security.KeyException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.PrivateKeyUtils:76,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 10
  - functionName: "[net.jsign.PVK].parse(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].length()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:57,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.PVK:57,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.PVK:59,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.PVK:60,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "net.jsign.PVK:60,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.PVK:61,1"
      Dst: "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    - Src: "net.jsign.PVK:62,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.PVK:61,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].get(byte[])"
    - "[java.nio.ByteBuffer].get()"
    - "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    - "[net.jsign.PVK].parseKey(byte[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:70"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:73"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:76"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:73"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:91"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:95"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:66,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.PVK:67,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.PVK:69,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.PVK:71,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:74,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.PVK:74,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.PVK:80,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "net.jsign.PVK:83,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.PVK:92,1"
      Dst: "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    - Src: "net.jsign.PVK:95,1"
      Dst: "[net.jsign.PVK].parseKey(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],int,int,java.lang.String)"
    - "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    - "[net.jsign.PVK].startsWith(byte[],byte[])"
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:104"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:112"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:116"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:99,1"
      Dst: "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    - Src: "net.jsign.PVK:102,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],int,int,java.lang.String)"
    - Src: "net.jsign.PVK:103,1"
      Dst: "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    - Src: "net.jsign.PVK:104,1"
      Dst: "[net.jsign.PVK].startsWith(byte[],byte[])"
    - Src: "net.jsign.PVK:109,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    - Src: "net.jsign.PVK:116,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.security.MessageDigest].update(byte[])"
    - "[java.lang.String].getBytes()"
    - "[java.security.MessageDigest].digest()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:131"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:129,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:130,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    - Src: "net.jsign.PVK:132,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "net.jsign.PVK:134,1"
      Dst: "[java.security.MessageDigest].digest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "javax.crypto.SecretKey"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Key].getAlgorithm()"
    - "[javax.crypto.Cipher].getInstance(java.lang.String)"
    - "[javax.crypto.Cipher].init(int,java.security.Key)"
    - "[javax.crypto.Cipher].doFinal(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:120,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "net.jsign.PVK:120,1"
      Dst: "[javax.crypto.Cipher].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:121,1"
      Dst: "[javax.crypto.Cipher].init(int,java.security.Key)"
    - Src: "net.jsign.PVK:122,1"
      Dst: "[javax.crypto.Cipher].doFinal(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].startsWith(byte[],byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:201"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:207"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:206"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:202"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:200"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.PVK].parseKey(byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[net.jsign.PVK].startsWith(byte[],byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].<init>(byte[],int,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.String].valueOf(int)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    - "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[java.security.KeyFactory].getInstance(java.lang.String)"
    - "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:146"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:143,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.PVK:144,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.PVK:146,1"
      Dst: "[net.jsign.PVK].startsWith(byte[],byte[])"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.String].<init>(byte[],int,int)"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:150,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.PVK:150,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.PVK:152,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.PVK:153,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "net.jsign.PVK:153,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:157,1"
      Dst: "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    - Src: "net.jsign.PVK:165,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.PVK:166,1"
      Dst: "[java.security.KeyFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:168,1"
      Dst: "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[net.jsign.PVK].reverse(byte[])"
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:179,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "net.jsign.PVK:181,1"
      Dst: "[net.jsign.PVK].reverse(byte[])"
    - Src: "net.jsign.PVK:181,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].reverse(byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:188"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:193"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.PrivateKeyUtils].readPrivateKeyPEM(java.io.File,char[])"
    functionSourceFile: "net.jsign.PrivateKeyUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[net.jsign.bouncycastle.openssl.PEMParser].<init>(java.io.Reader)"
    - "[net.jsign.bouncycastle.openssl.PEMParser].readObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils].disableJceSecurity()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].<init>()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].<init>()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].setProvider(java.security.Provider)"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].setProvider(java.security.Provider)"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].build(char[])"
    - "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].decryptKeyPair(net.jsign.bouncycastle.openssl.PEMDecryptorProvider)"
    - "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPrivateKeyInfo()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[java.io.InputStreamReader].close()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].setProvider(java.security.Provider)"
    - "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].build(char[])"
    - "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].decryptPrivateKeyInfo(net.jsign.bouncycastle.operator.InputDecryptorProvider)"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyPair(net.jsign.bouncycastle.openssl.PEMKeyPair)"
    - "[java.security.KeyPair].getPrivate()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 82
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PrivateKeyUtils:113"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:118"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PrivateKeyUtils:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:122"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:129"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:135"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:140"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:141"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PrivateKeyUtils:145"
      Branch Sides:
      - BranchSide: "net.jsign.PrivateKeyUtils:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils:110,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "net.jsign.PrivateKeyUtils:111,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser].<init>(java.io.Reader)"
    - Src: "net.jsign.PrivateKeyUtils:112,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser].readObject()"
    - Src: "net.jsign.PrivateKeyUtils:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.PrivateKeyUtils:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.PrivateKeyUtils:119,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:122,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.PrivateKeyUtils:122,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:124,1"
      Dst: "[net.jsign.PrivateKeyUtils].disableJceSecurity()"
    - Src: "net.jsign.PrivateKeyUtils:126,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:127,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:127,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].setProvider(java.security.Provider)"
    - Src: "net.jsign.PrivateKeyUtils:131,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:131,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].setProvider(java.security.Provider)"
    - Src: "net.jsign.PrivateKeyUtils:131,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].build(char[])"
    - Src: "net.jsign.PrivateKeyUtils:132,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].decryptKeyPair(net.jsign.bouncycastle.openssl.PEMDecryptorProvider)"
    - Src: "net.jsign.PrivateKeyUtils:133,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPrivateKeyInfo()"
    - Src: "net.jsign.PrivateKeyUtils:133,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.PrivateKeyUtils:152,1"
      Dst: "[java.io.InputStreamReader].close()"
    - Src: "net.jsign.PrivateKeyUtils:137,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:137,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].setProvider(java.security.Provider)"
    - Src: "net.jsign.PrivateKeyUtils:137,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].build(char[])"
    - Src: "net.jsign.PrivateKeyUtils:138,1"
      Dst: "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].decryptPrivateKeyInfo(net.jsign.bouncycastle.operator.InputDecryptorProvider)"
    - Src: "net.jsign.PrivateKeyUtils:143,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyPair(net.jsign.bouncycastle.openssl.PEMKeyPair)"
    - Src: "net.jsign.PrivateKeyUtils:143,1"
      Dst: "[java.security.KeyPair].getPrivate()"
    - Src: "net.jsign.PrivateKeyUtils:150,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.PrivateKeyUtils:150,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.PrivateKeyUtils:150,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:118,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser].<init>(java.io.Reader)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemReader].<init>(java.io.Reader)"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$PublicKeyParser].<init>()"
    - "[net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser].<init>()"
    - "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - "[net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser].<init>()"
    - "[net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser].<init>()"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemReader].<init>(java.io.Reader)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PublicKeyParser].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemReader].<init>(java.io.Reader)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PKCS10CertificationRequestParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$X509CertificateParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$X509TrustedCertificateParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509CRLParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$X509CRLParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PKCS7Parser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$X509AttributeCertificateParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PublicKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PublicKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PublicKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMKeyPairParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$DSAKeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$ECDSAKeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$PrivateKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemReader].readPemObject()"
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getType()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemObjectParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemReader].readPemObject()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getType()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObjectParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemReader].readPemObject()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.util.io.pem.PemObject"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.bouncycastle.util.io.pem.PemReader].loadObject(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemReader].loadObject(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemReader].loadObject(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.util.io.pem.PemObject"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].trim()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].<init>(java.lang.String,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[net.jsign.bouncycastle.util.encoders.Base64].decode(java.lang.String)"
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.pem.PemReader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.pem.PemReader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemHeader].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Base64].decode(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemReader:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemHeader].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemHeader:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Base64].decode(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Base64"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.io.ByteArrayOutputStream].<init>(int)"
    - "[net.jsign.bouncycastle.util.encoders.Encoder].decode(java.lang.String,java.io.OutputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>(int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Encoder].decode(java.lang.String,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.util.encoders.Base64:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemObject:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemObject:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getType()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils].disableJceSecurity()"
    functionSourceFile: "net.jsign.PrivateKeyUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    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)"
    - "[sun.misc.Unsafe].staticFieldBase(java.lang.reflect.Field)"
    - "[sun.misc.Unsafe].staticFieldOffset(java.lang.reflect.Field)"
    - "[net.jsign.PrivateKeyUtils$1].<init>()"
    - "[sun.misc.Unsafe].putObject(java.lang.Object,long,java.lang.Object)"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils:84,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:85,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "net.jsign.PrivateKeyUtils:86,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "net.jsign.PrivateKeyUtils:90,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "net.jsign.PrivateKeyUtils:92,1"
      Dst: "[sun.misc.Unsafe].staticFieldBase(java.lang.reflect.Field)"
    - Src: "net.jsign.PrivateKeyUtils:92,1"
      Dst: "[sun.misc.Unsafe].staticFieldOffset(java.lang.reflect.Field)"
    - Src: "net.jsign.PrivateKeyUtils:92,1"
      Dst: "[net.jsign.PrivateKeyUtils$1].<init>()"
    - Src: "net.jsign.PrivateKeyUtils:92,1"
      Dst: "[sun.misc.Unsafe].putObject(java.lang.Object,long,java.lang.Object)"
    - Src: "net.jsign.PrivateKeyUtils:105,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.PrivateKeyUtils$1].<init>()"
    functionSourceFile: "net.jsign.PrivateKeyUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils$1:92,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].<init>(net.jsign.bouncycastle.jce.provider.BouncyCastleProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].build(char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.PEMDecryptorProvider"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder,char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].decryptKeyPair(net.jsign.bouncycastle.openssl.PEMDecryptorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.PEMKeyPair"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMDecryptorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMDecryptorProvider].get(java.lang.String)"
    - "[net.jsign.bouncycastle.openssl.PEMDecryptor].decrypt(byte[],byte[])"
    - "[net.jsign.bouncycastle.openssl.PEMKeyPairParser].parse(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMDecryptorProvider].get(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMDecryptor].decrypt(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPairParser].parse(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPrivateKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMKeyPair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyFactory(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[java.security.spec.PKCS8EncodedKeySpec].<init>(byte[])"
    - "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyFactory(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.spec.PKCS8EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyFactory(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.KeyFactory"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyFactory(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createKeyFactory(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].build(char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.InputDecryptorProvider"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder,char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder,char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].decryptPrivateKeyInfo(net.jsign.bouncycastle.operator.InputDecryptorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.InputDecryptorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptionAlgorithm()"
    - "[net.jsign.bouncycastle.operator.InputDecryptorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptedData()"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.operator.InputDecryptor].getInputStream(java.io.InputStream)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.pkcs.PKCSException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptionAlgorithm()"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.InputDecryptorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptedData()"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.InputDecryptor].getInputStream(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.pkcs.PKCSException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptionAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getEncryptedData()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.pkcs.PKCSException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.pkcs.PKCSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.pkcs.PKCSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyPair(net.jsign.bouncycastle.openssl.PEMKeyPair)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.KeyPair"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMKeyPair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPrivateKeyInfo()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyFactory(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPublicKeyInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[java.security.spec.X509EncodedKeySpec].<init>(byte[])"
    - "[java.security.KeyFactory].generatePublic(java.security.spec.KeySpec)"
    - "[java.security.spec.PKCS8EncodedKeySpec].<init>(byte[])"
    - "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    - "[java.security.KeyPair].<init>(java.security.PublicKey,java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPrivateKeyInfo()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter].getKeyFactory(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPublicKeyInfo()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.spec.X509EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.KeyFactory].generatePublic(java.security.spec.KeySpec)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.spec.PKCS8EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.security.KeyPair].<init>(java.security.PublicKey,java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcaPEMKeyConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.openssl.PEMKeyPair].getPublicKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMKeyPair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].isPredictionResistant()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 5
    ICount: 16
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "addTask(java.lang.Runnable)"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "addTask(java.lang.Runnable)"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].entropySize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].half(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 123
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 123
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 123
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 123
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineGetEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineGetEncoded()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineGetEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].localEngineGetParameterSpec(java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.AlgorithmParameterSpec"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getSalt()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getIterationCount()"
    - "[java.math.BigInteger].intValue()"
    - "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getSalt()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getIterationCount()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBEParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(byte[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams].engineToString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1VisibleString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1VisibleString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1VisibleString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1VisibleString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1VisibleString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1VisibleString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1VisibleString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VisibleString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:829,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Option$Builder:830,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].argName(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].desc(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].longOpt(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].numberOfArgs(int)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].optionalArg(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].required()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:902,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].valueSeparator()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].valueSeparator(char)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:936,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].valueSeparator(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].valueSeparator(char)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].valueSeparator(char)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].hasArg()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:973,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option$Builder:985"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:985"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Option$Builder:984"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option$Builder:985"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:985"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Option$Builder:984"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option$Builder].hasArgs()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].build()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.cli.Option"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder,net.jsign.commons.cli.Option$1)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option$Builder:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:1011"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option$Builder:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:1011"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:1010,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option$Builder:1012,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder,net.jsign.commons.cli.Option$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder,net.jsign.commons.cli.Option$1)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    - "net.jsign.commons.cli.Option$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:42,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.commons.cli.Option$Builder].access$000(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$100(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$200(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$300(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$400(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$500(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$600(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$700(net.jsign.commons.cli.Option$Builder)"
    - "[net.jsign.commons.cli.Option$Builder].access$800(net.jsign.commons.cli.Option$Builder)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:89,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Option:78,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.Option:90,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$000(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:91,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$100(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:92,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$200(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:93,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$300(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:94,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$400(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:95,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$500(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:96,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$600(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:97,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$700(net.jsign.commons.cli.Option$Builder)"
    - Src: "net.jsign.commons.cli.Option:98,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].access$800(net.jsign.commons.cli.Option$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$000(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$100(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$200(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$300(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$400(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$500(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$600(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$700(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$800(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$000(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$100(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$200(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$300(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$400(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$500(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$600(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$700(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].access$800(net.jsign.commons.cli.Option$Builder)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String,net.jsign.commons.cli.Option$1)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.commons.cli.Option$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:792,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.io.InputStream].read()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 30
    ICount: 26
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getOctetStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getPadBits()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 101
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:65,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toBufferedInputStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:114,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:140"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:136"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:138,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:139,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:140,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:139,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:163"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:166"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:165"
        BranchSideFuncs:
        - "needNewBuffer(int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:162,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:166,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:212,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5:-1,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:140"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:136"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:137,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:138,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:139,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:140,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:139,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:151,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:163"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:166"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:165"
        BranchSideFuncs:
        - "needNewBuffer(int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:162,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:164,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:166,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].reset()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].resetImpl()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:174,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].resetImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].size()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:184,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 23
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:203"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:204"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:207"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:206"
        BranchSideFuncs:
        - "writeImpl(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:207,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:212,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(int)"
    functionUses: 18
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:217,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].writeTo(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeToImpl(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:222,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeToImpl(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].lambda$toInputStream$1(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 2
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].bootstrap$(byte[],int,int)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:191,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].bootstrap$(byte[],int,int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:191,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].bootstrap$(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21:-1,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_0__21].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].lambda$toInputStream$0(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].builder()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:191,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].builder()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:192,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:193,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:194,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:195,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectoryType].values()"
    functionSourceFile: "net.jsign.pe.DataDirectoryType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.pe.DataDirectoryType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectoryType:25,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectoryType].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.pe.DataDirectoryType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.pe.DataDirectoryType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectoryType:25,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectoryType].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.pe.DataDirectoryType"
    linkageType: null
    functionLinenumber: 24
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectoryType:25,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectoryType].$values()"
    functionSourceFile: "net.jsign.pe.DataDirectoryType"
    linkageType: null
    functionLinenumber: 24
    functionDepth: 0
    returnType: "net.jsign.pe.DataDirectoryType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1NumericString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(long,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].makeNative(boolean,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 20
    ICount: 73
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeNative(boolean,int)"
        - "getIV()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].makeNative(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(long,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].makeNative(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB$CFBRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].returnByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processByte(long,byte)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 49
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "getBlockSize()"
        - "processBytes(long,byte[],int,int,byte[],int)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset(long)"
    functionUses: 12
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getNativeMultiBlockSize()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getNativeMultiBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getNativeMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlocks(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].makeNative(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].getNativeMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 11
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.ValidityPrecompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasFailed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportFailed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasCurveEquationPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportCurveEquationPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasOrderPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportOrderPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcSpOpusInfo"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - "[net.jsign.asn1.authenticode.SpcLink].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:52"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:55"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:54"
        BranchSideFuncs: []
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:55"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:58"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:51,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:53,1"
      Dst: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:56,1"
      Dst: "[net.jsign.asn1.authenticode.SpcLink].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcSpOpusInfo"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 110
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:64"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:68"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:72"
        BranchSideFuncs:
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:71"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:62,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:65,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:65,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:72,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator"
    - "net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder"
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.ContentVerifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.DigestCalculator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox$State].<init>()"
    functionSourceFile: "net.jsign.log4j.util.Unbox$State"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].access$000()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox$State:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$State:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox$State:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.Unbox$State:100,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$000()"
    - Src: "net.jsign.log4j.util.Unbox$State:104,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Unbox$State].getStringBuilder()"
    functionSourceFile: "net.jsign.log4j.util.Unbox$State"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].access$100()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox$State:109,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$100()"
    - Src: "net.jsign.log4j.util.Unbox$State:110,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox].access$100()"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox$State].isBoxedPrimitive(java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.util.Unbox$State"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox$State:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$State:120"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Unbox$State:119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Unbox$State:116"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$State:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Unbox$State:114"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.poi.util.ExceptionUtil].<init>()"
    functionSourceFile: "net.jsign.poi.util.ExceptionUtil"
    linkageType: null
    functionLinenumber: -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.jsign.poi.util.ExceptionUtil:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ExceptionUtil].isFatal(java.lang.Throwable)"
    functionSourceFile: "net.jsign.poi.util.ExceptionUtil"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.ExceptionUtil:37"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:36"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.ExceptionUtil:37"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:36"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.ExceptionUtil:37"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:36"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.ExceptionUtil:37"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:36"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.poi.util.ExceptionUtil].rethrow(java.lang.Throwable)"
    functionSourceFile: "net.jsign.poi.util.ExceptionUtil"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.ExceptionUtil:57"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.ExceptionUtil:60"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:63"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.ExceptionUtil:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.ExceptionUtil:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    functionSourceFile: "net.jsign.AuthenticodeSigner$1"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.AuthenticodeSigner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner$1:441,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner$1].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.AuthenticodeSigner$1"
    linkageType: null
    functionLinenumber: 444
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner$1:445"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner$1:448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner$1:447"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.AuthenticodeSigner$1:446"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner$1:448"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
      - BranchSide: "net.jsign.AuthenticodeSigner$1:447"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.AuthenticodeSigner$1:447"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner$1:450"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
      - BranchSide: "net.jsign.AuthenticodeSigner$1:449"
        BranchSideFuncs:
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner$1:445,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner$1:445,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.AuthenticodeSigner$1:448,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner$1:450,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 41
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration:-1,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$1)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.TBSCertList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$23:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$21:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getOffset()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopPathCounters].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].noopCounter()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$NoopPathCounters:359,1"
      Dst: "[net.jsign.commons.io.file.Counters].noopCounter()"
    - Src: "net.jsign.commons.io.file.Counters$NoopPathCounters:359,1"
      Dst: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$KeyGen128].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$KeyGen128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$KeyGen].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$KeyGen128:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$KeyGen].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne64(long[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger64(long[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addOne(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 6
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].squarePow(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].halfTrace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].halfTrace(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hasFastTrace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].trace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].trace(long[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].invert(long[],long[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].invert(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 35
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].sqrt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 83
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getRepresentation()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq64(long[],long[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 158
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMulw(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 158
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 6
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePow(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].halfTrace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hasFastTrace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].trace()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 29
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getRepresentation()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESWrapPadEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESWrapPadEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.engines.RFC5649WrapEngine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESWrapPadEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESWrapPadEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.RFC5649WrapEngine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].<init>()"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.SystemPropertiesPropertySource:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getSystemProperty(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:44,1"
      Dst: "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getPriority()"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].forEach(net.jsign.log4j.util.BiConsumer)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.BiConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperties()"
    - "[java.util.Properties].keySet()"
    - "[java.util.Set].toArray()"
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SystemPropertiesPropertySource:77"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SystemPropertiesPropertySource:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:60,1"
      Dst: "[java.lang.System].getProperties()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:73,1"
      Dst: "[java.util.Properties].keySet()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:73,1"
      Dst: "[java.util.Set].toArray()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:78,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:79,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:79,1"
      Dst: "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getNormalForm(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertySource$Util].joinAsCamelCase(java.lang.Iterable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:85,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:85,1"
      Dst: "[net.jsign.log4j.util.PropertySource$Util].joinAsCamelCase(java.lang.Iterable)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:85,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertySource$Util].joinAsCamelCase(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.util.PropertySource$Util"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.SimpleMessage].charAt(int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].charAt(int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].subSequence(int,int)"
    - "[net.jsign.log4j.message.SimpleMessage].subSequence(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Character].toUpperCase(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].subSequence(int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 24
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:168"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:179"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:169"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:171"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:173"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:177"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "length()"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertySource$Util:166,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:173,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:174,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:179,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getPropertyNames()"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperties()"
    - "[java.util.Properties].stringPropertyNames()"
    - "[net.jsign.log4j.util.PropertySource].getPropertyNames()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:91,1"
      Dst: "[java.lang.System].getProperties()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:91,1"
      Dst: "[java.util.Properties].stringPropertyNames()"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:93,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getPropertyNames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:100,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:102,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].containsProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SystemPropertiesPropertySource].getProperty(java.lang.String)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SystemPropertiesPropertySource:108"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SystemPropertiesPropertySource:107"
        BranchSideFuncs:
        - "getProperty(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:108,1"
      Dst: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SystemPropertiesPropertySource].getProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SystemPropertiesPropertySource"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:100,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.SystemPropertiesPropertySource:102,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.spi.VBScriptSignableProvider].<init>()"
    functionSourceFile: "net.jsign.spi.VBScriptSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.VBScriptSignableProvider:37,1"
      Dst: "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.VBScriptSignableProvider].create(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.spi.VBScriptSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.Signable"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.VBScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.VBScriptSignableProvider:42,1"
      Dst: "[net.jsign.script.VBScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.VBScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.script.VBScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.WSHScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.VBScript:63,1"
      Dst: "[net.jsign.script.WSHScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$SqlDateReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$SqlDateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers$DateReader].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$SqlDateReader:421,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$SqlDateReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$SqlDateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers$DateReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - "[java.util.Date].getTime()"
    - "[java.sql.Date].<init>(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$SqlDateReader:425,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.Readers$SqlDateReader:425,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "net.jsign.json-io.util.io.Readers$SqlDateReader:425,1"
      Dst: "[java.sql.Date].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$DateReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$DateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:180"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:183"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:184"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:188"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:203"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:192"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:195"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:196"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:182,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:182,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:186,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:191,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:200,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:200,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$DateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[net.jsign.json-io.util.io.Readers].access$0()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$1()"
    - "[net.jsign.json-io.util.io.Readers].access$2()"
    - "[net.jsign.json-io.util.io.Readers].access$3()"
    - "[net.jsign.json-io.util.io.Readers].access$4()"
    - "[net.jsign.json-io.util.io.Readers].access$5()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$6()"
    - "[java.lang.String].toLowerCase()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].access$7()"
    - "[java.util.regex.Matcher].groupCount()"
    - "[net.jsign.json-io.util.io.Readers].access$8()"
    - "[net.jsign.json-io.util.io.Readers].access$9()"
    - "[java.lang.String].length()"
    - "[net.jsign.json-io.util.io.Readers].access$10()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Calendar].getInstance()"
    - "[java.util.Calendar].clear()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.util.Calendar].set(int,int,int)"
    - "[java.util.Calendar].set(int,int,int,int,int,int)"
    - "[java.util.Calendar].set(int,int)"
    - "[java.util.Calendar].getTime()"
    functionUses: 0
    ICount: 215
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:216"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:239"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:249"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:261"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:269"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:271"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:274"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:285"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:294"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:300"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:308"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:319"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:313"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:331"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:325"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:337"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:362"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:374"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:364"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:387"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:388"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:400"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:403"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:404"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:408"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:210,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:211,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$0()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:221,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:223,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:226,1"
      Dst: "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:230,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$1()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:240,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$2()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:250,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$3()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:260,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$4()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:270,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$5()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$6()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:293,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$7()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:300,1"
      Dst: "[java.util.regex.Matcher].groupCount()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:307,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$8()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:320,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$9()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:343,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:345,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$10()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:354,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:360,1"
      Dst: "[java.util.Calendar].getInstance()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:361,1"
      Dst: "[java.util.Calendar].clear()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:364,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:375,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:390,1"
      Dst: "[java.util.Calendar].set(int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:414,1"
      Dst: "[java.util.Calendar].set(int,int,int,int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:415,1"
      Dst: "[java.util.Calendar].set(int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:417,1"
      Dst: "[java.util.Calendar].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 25
    BBCount: 58
  - functionName: "[net.jsign.json-io.util.io.Readers].access$0()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$1()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$2()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$3()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$4()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$5()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$6()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$7()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$8()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$9()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].access$10()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].<init>()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getPath()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[java.io.File].getPath()"
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype(net.jsign.KeyStoreType)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - "[net.jsign.KeyStoreType].values()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:122"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreType].values()"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].values()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreType].of(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:133"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:140"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreType].of(java.io.File)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keypass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:159,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:167,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:167,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:186,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:186,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].setBaseDir(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.System].getenv()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:226"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:227"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:237"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:240"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:227,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.KeyStoreBuilder:228,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:229,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.KeyStoreBuilder:231,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:233,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.lang.System].getenv()"
    - Src: "net.jsign.KeyStoreBuilder:237,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.KeyStoreBuilder:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:240,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.KeyStoreBuilder].validate()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.KeyStoreBuilder].provider()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:267"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:270"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreBuilder].build()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.KeyStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].validate()"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreBuilder].provider()"
    - "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:280,1"
      Dst: "[net.jsign.KeyStoreBuilder].validate()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].provider()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].lambda$storetype$0(net.jsign.KeyStoreType)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:125"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:124"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].addShutdownHook()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].<init>()"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].addShutdownHook(java.lang.Thread)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].<init>()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Runtime].addShutdownHook(java.lang.Thread)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$2:-1,1"
      Dst: "[java.lang.Thread].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].addDisposable(net.jsign.bouncycastle.util.dispose.Disposable)"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.dispose.Disposable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].<init>(net.jsign.bouncycastle.util.dispose.Disposable,java.lang.ref.ReferenceQueue)"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeReference:net.jsign.bouncycastle.util.dispose.NativeReference].toString()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.util.dispose.Disposable,java.lang.ref.ReferenceQueue)"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].<init>(net.jsign.bouncycastle.util.dispose.Disposable,java.lang.ref.ReferenceQueue)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].<init>(net.jsign.bouncycastle.util.dispose.Disposable,java.lang.ref.ReferenceQueue)"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.util.dispose.Disposable"
    - "java.lang.ref.ReferenceQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getDisposeAction()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeReference].getDisposeAction()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeReference:net.jsign.bouncycastle.util.dispose.NativeReference].toString()"
    - "[java.lang.ref.PhantomReference].<init>(java.lang.Object,java.lang.ref.ReferenceQueue)"
    - "[java.lang.Object].toString()"
    - "[net.jsign.bouncycastle.util.dispose.Disposable].getDisposeAction()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable:-1,1"
      Dst: "[java.lang.ref.PhantomReference].<init>(java.lang.Object,java.lang.ref.ReferenceQueue)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.Disposable].getDisposeAction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].run()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].<init>(net.jsign.bouncycastle.util.dispose.DisposalDaemon,net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    - "[java.lang.ref.ReferenceQueue].remove()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.concurrent.ScheduledExecutorService].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.logging.Logger].warning(java.lang.String)"
    functionUses: 4
    ICount: 27
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.ref.ReferenceQueue].remove()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].<init>(net.jsign.bouncycastle.util.dispose.DisposalDaemon,net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.concurrent.ScheduledExecutorService].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon:-1,1"
      Dst: "[java.util.logging.Logger].warning(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].<init>(net.jsign.bouncycastle.util.dispose.DisposalDaemon,net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    - "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.logging.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$100()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.ref.ReferenceQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.x509.DistributionPointName,boolean,boolean,net.jsign.bouncycastle.asn1.x509.ReasonFlags,boolean,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    - "boolean"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.x509.ReasonFlags"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.x509.DistributionPointName,boolean,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.x509.DistributionPointName,boolean,boolean,net.jsign.bouncycastle.asn1.x509.ReasonFlags,boolean,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.x509.DistributionPointName,boolean,boolean,net.jsign.bouncycastle.asn1.x509.ReasonFlags,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ReasonFlags].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ReasonFlags].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].onlyContainsUserCerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].onlyContainsCACerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].onlyContainsAttributeCerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getDistributionPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getOnlySomeReasons()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ReasonFlags"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].booleanToString(boolean)"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 7
    ICount: 40
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "booleanToString(boolean)"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].booleanToString(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toString()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFailureInfo].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].toString()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].toString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null:net.jsign.bouncycastle.asn1.ASN1Null].toString()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 8
    ICount: 19
    EdgeCount: 100
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-2"
        BranchSideFuncs:
        - "lineSeparator()"
        - "toString()"
        - "appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DistributionPointName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuffer"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DistributionPointName:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuffer"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].booleanToString(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].appendObject(java.lang.StringBuffer,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuffer"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].booleanToString(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].<init>(net.jsign.bouncycastle.crypto.modes.GCMModeCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.GCMModeCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].<init>(net.jsign.bouncycastle.crypto.modes.GCMModeCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.GCMModeCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.GMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.GMac:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[])"
        - "getIV()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    - "int"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(byte)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADByte(byte)"
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADByte(byte)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADByte(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADBytes(byte[],int,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].doFinal(byte[],int)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.macs.GMac].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.GMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].reset()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.GMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[])"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].verify(int,byte[],byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 7
    argTypes:
    - "int"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verify(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int,int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verify(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],byte[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verifyPrehash(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],byte[],int)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verify(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verify(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].verifyPrehash(byte[],int,net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint,byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].validatePublicKeyPartialExport(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].validatePublicKeyPartialExport(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$9].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$9"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.util.DigestFactory$9:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$9].createClone(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory$9:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3Digest)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 30
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].<init>()"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.AbstractMessageFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:49,1"
      Dst: "[net.jsign.log4j.message.AbstractMessageFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:63,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Locale"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.StringFormattedMessage:67"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.StringFormattedMessage:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:71,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:79,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:87,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:95,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:103,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:111,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:120,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 9
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:129,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:138,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.StringFormatterMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.Message"
    argCount: 11
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormatterMessageFactory:147,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.StringFormattedMessage"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.util.Locale].getDefault(java.util.Locale$Category)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[java.util.Locale].getDefault(java.util.Locale$Category)"
    - Src: "net.jsign.log4j.message.StringFormattedMessage:80,1"
      Dst: "[net.jsign.log4j.message.StringFormattedMessage].<init>(java.util.Locale,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].<init>(java.security.PrivateKey,java.security.Provider)"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.PrivateKey"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getAlgorithm()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getAlgorithm()"
    - "[net.jsign.jca.SigningServicePrivateKey].getAlgorithm()"
    - "[java.security.Key].getAlgorithm()"
    functionUses: 3
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey:169,1"
      Dst: "[java.security.Key].getAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getFormat()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Key].getFormat()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey:174,1"
      Dst: "[java.security.Key].getFormat()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getEncoded()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoded()"
    - "[net.jsign.jca.SigningServicePrivateKey].getEncoded()"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getEncoded()"
    - "[java.security.Key].getEncoded()"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey:179,1"
      Dst: "[java.security.Key].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getPrivateKey()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.PrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getProvider()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSHA3_224].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSHA3_224"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSHA3_224:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$14].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$14:356,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$14].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$14:359"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$14:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$14:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$14:359"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$14:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$14:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$14:359,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$14:359,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.KeyStoreType$14:360,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$14:360,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$14:360,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$14:360,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$14:360,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$14].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].split(java.lang.String,int)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$14:367"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$14:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$14:366,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$14:366,1"
      Dst: "[java.lang.String].split(java.lang.String,int)"
    - Src: "net.jsign.KeyStoreType$14:367,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$14:369,1"
      Dst: "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.KeyStoreType$14:369,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    - Src: "net.jsign.KeyStoreType$14:371,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.ESignerSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[net.jsign.jca.ESignerSigningService].getAccessToken(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.ESignerSigningService:61"
      Branch Sides:
      - BranchSide: "net.jsign.jca.ESignerSigningService:62"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.ESignerSigningService:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.ESignerSigningService:62"
      Branch Sides:
      - BranchSide: "net.jsign.jca.ESignerSigningService:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.ESignerSigningService:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.ESignerSigningService:61,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.jca.ESignerSigningService:61,1"
      Dst: "[net.jsign.jca.ESignerSigningService].getAccessToken(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.ESignerSigningService:61,1"
      Dst: "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.jca.ESignerSigningService].getAccessToken(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.ESignerSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object)"
    - "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.ESignerSigningService:71,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.jca.ESignerSigningService:72,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.ESignerSigningService:77,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String)"
    - Src: "net.jsign.jca.ESignerSigningService:78,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object)"
    - Src: "net.jsign.jca.ESignerSigningService:78,1"
      Dst: "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.ESignerSigningService:79,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:294,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:314,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:315,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:316,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:317,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.lang.String].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:322,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.List].iterator()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 242
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:382"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:398"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:403"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:404"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:412"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:411"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:406"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:406"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:405"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:415"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:421"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:436"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:440"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:433"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:425"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:424"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:425"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:423"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:422"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:450"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:477"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:476"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:465"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:462"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:454"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:453"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:454"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:452"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:451"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:380,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:96,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:97,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:98,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:104,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:386,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:387,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:388,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:389,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:391,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:391,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:398,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:400,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:415,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:417,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:429,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:429,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:431,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:433,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:440,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:482,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:482,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:486,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 41
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Number].intValue()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:504"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:507"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:511"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:512"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:514"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:513"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:506,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:510,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:514,1"
      Dst: "[java.lang.Number].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:775,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:796,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.Class].getDeclaredFields()"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].getSuperclass()"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:142"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:158"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:170"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:176"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:156"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:150"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:141,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:147,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:154,1"
      Dst: "[java.lang.Class].getDeclaredFields()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:158,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:167,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:170,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:187,1"
      Dst: "[java.lang.Class].getSuperclass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 21
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    - "[java.util.Map].clear()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.json-io.util.io.JsonWriter].flush()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:805,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:806,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:809,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:813,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:815,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Deque].removeFirst()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].isArray()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:829"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:843"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:846"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:859"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:858"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:848"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:833"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:881"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:880"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:867"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:833"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:874"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:869"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:868"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:871"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:873"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:872"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:881"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:906"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:905"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:889"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:893"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:892"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:885"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:884"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:886"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:885"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:884"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:906"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:910"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:907"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:908"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:908"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:907"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:839"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:841"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:840"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:833,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:834,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:835,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:841,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:843,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:843,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:850,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:851,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:865,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:867,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:869,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:873,1"
      Dst: "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:881,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:889,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:893,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:908,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:920,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:839,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 17
    BBCount: 35
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.Class].isEnum()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:286"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:288"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:289"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:291"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:286,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:287,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:288,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:291,1"
      Dst: "[java.lang.Class].isEnum()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:292,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Deque"
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].values()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.util.Collection].contains(java.lang.Object)"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:951"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:964"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:948"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:946"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:940,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:940,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:944,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:944,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:946,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:951,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:953,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:963,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:965,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:966,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:968,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 15
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:987"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:991"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:994"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:977"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:983"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:978,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:978,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:984,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:985,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:989,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:992,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:982,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInterface()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistanceToInterface(java.lang.Class,java.lang.Class)"
    - "[java.lang.Class].getSuperclass()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:203"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:206"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:214"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:206"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:210"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:203,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:205,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistanceToInterface(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:213,1"
      Dst: "[java.lang.Class].getSuperclass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getDistanceToInterface(java.lang.Class,java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.lang.Class].getInterfaces()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.Class].getSuperclass()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistanceToInterface(java.lang.Class,java.lang.Class)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:236"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:240"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:234"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:230"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:248"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:252"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:248"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:252"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:252"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:254"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:253"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:230,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:232,1"
      Dst: "[java.lang.Class].getInterfaces()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:236,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:241,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:243,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:248,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:254,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:254,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:257,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistanceToInterface(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:254,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1048,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1068"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1071"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1072"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1077"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1078"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1082"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1078"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1082"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1083"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1087"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1083"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1087"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1088"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1091"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1092"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1095"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1096"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1099"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1100"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1122"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1103"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1107"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1123"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1125"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1074,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1078,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1083,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1088,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1088,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1090,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1094,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1098,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1103,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1105,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1107,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1109,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1111,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1113,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1115,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1120,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1125,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1127,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1132,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 30
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:577"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:580"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:582"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:589"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:588"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:581,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:582,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:589,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:593,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].hasPrimitiveForm()"
    - "[net.jsign.json-io.util.io.Writers$DateWriter].writePrimitiveForm(java.lang.Object,java.io.Writer,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriterEx].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].write(java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:636"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:639"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:643"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:644"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:648"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:651"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:654"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:655"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:658"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:663"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:673"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:676"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:687"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:688"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:689"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:688"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:693"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:637,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:644,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:649,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:654,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].hasPrimitiveForm()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:660,1"
      Dst: "[net.jsign.json-io.util.io.Writers$DateWriter].writePrimitiveForm(java.lang.Object,java.io.Writer,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:664,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:671,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:672,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:675,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:675,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:679,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:685,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:696,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriterEx].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:700,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].write(java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:702,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 17
    BBCount: 35
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:724"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:728"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:729"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:728"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:723,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:726,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:727,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:748"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:753"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:741"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:745"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:742"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:741"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:747,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:750,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:752,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1006"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1010"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1015"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1017"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1030"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1020"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1023"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1024"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1024"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1023"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1011,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1011,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1017,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1019,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1024,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1026,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1031,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(long)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.Long].toString(long)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2546"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2549"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2555"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2551,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2554,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2555,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2555,1"
      Dst: "[java.lang.Long].toString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.Writers$DateWriter].writePrimitiveForm(java.lang.Object,java.io.Writer,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$DateWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Writers$DateWriter].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - "[java.util.Date].getTime()"
    - "[java.lang.Long].toString(long)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Writers$DateWriter:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$DateWriter:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:118,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:120,1"
      Dst: "[net.jsign.json-io.util.io.Writers$DateWriter].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:124,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:124,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:124,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.Writers$DateWriter].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$DateWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.text.Format].format(java.lang.Object)"
    - "[java.util.Date].getTime()"
    - "[java.lang.Long].toString(long)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Writers$DateWriter:87"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$DateWriter:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Writers$DateWriter:92"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$DateWriter:96"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Writers$DateWriter:97"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$DateWriter:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:86,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:89,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:90,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:94,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:100,1"
      Dst: "[java.text.Format].format(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:105,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "net.jsign.json-io.util.io.Writers$DateWriter:105,1"
      Dst: "[java.lang.Long].toString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:526,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:555"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:561"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:559,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1139"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1137"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1138,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:535,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1144"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1148"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1153"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1159"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1161"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1164"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1172"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1173"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1176"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1177"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1181"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1185"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1188"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1189"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1192"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1193"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1196"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1197"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1148,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1149,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1150,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1151,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1156,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1161,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:264"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:268,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:544,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    - "[java.lang.String].<init>(char[])"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    - "[java.lang.Class].getComponentType()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 149
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1259"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1262"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1267"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1267"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1271"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1275"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1276"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1283"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1289"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1294"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1307"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1307"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1323"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1324"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1328"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1331"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1332"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1336"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1339"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1340"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1343"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1344"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1347"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1361"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1364"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1365"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1381"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1370"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1370"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1377"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1381"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1357"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1358"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1395"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1263,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1264,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1265,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1272,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1273,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1278,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1278,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1280,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1285,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1294,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1295,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1322,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1326,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1326,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1330,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1334,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1338,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1342,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1346,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1350,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1354,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1355,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1359,1"
      Dst: "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1365,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1368,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1378,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 38
    BBCount: 76
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(char[])"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1499"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1501,1"
      Dst: "[java.io.Writer].write(char[])"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1502,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2484"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2509"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2480"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2481"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2477,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2478,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2482,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2489,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "short[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1487"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1489,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1489,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1490,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1476"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1478,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1478,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1479,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[java.lang.Long].toString(long)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1449"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1463"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1451"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1464"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1453,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1454,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1454,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "float[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1422"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1424,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1424,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1425,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Float].toString(float)"
    - "[java.lang.Float].isNaN(float)"
    - "[java.lang.Float].isInfinite(float)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1440"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1443"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1443"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1443"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1440,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1441,1"
      Dst: "[java.lang.Float].toString(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1443,1"
      Dst: "[java.lang.Float].isNaN(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1443,1"
      Dst: "[java.lang.Float].isInfinite(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1411"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1413,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1413,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1414,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Double].toString(double)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1432"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1435"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1432,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1433,1"
      Dst: "[java.lang.Double].toString(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1435,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1435,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Boolean].toString(boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1403"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1401"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1402"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1403,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1405,1"
      Dst: "[java.lang.Boolean].toString(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:609"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:614"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:615,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:619,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.Float].isNaN(float)"
    - "[java.lang.Float].isInfinite(float)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1215"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1219"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1224"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1225"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1225"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1229"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1221,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1221,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1229,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1230,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1232,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1237,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].isNaN(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].isInfinite(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 24
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:279"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:284"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:283,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractCollection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.EnumSet].complementOf(java.util.EnumSet)"
    - "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].size()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Enum].name()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.lang.reflect.Field].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 93
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2220"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2238"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2250"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2307"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2274"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2277"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2284"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2280"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2284"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2295"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2276"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2275"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2216,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2217,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2219,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2222,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2222,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2224,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2227,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2231,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2233,1"
      Dst: "[java.util.AbstractCollection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2233,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2237,1"
      Dst: "[java.util.EnumSet].complementOf(java.util.EnumSet)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2244,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2245,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2256,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2258,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2261,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2263,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2265,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2289,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2297,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2297,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2307,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 26
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Field"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:131,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:131,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2389,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.lang.String"
    - "java.lang.reflect.Field"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - "[java.lang.Enum].name()"
    - "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2397"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2397"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2405"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2421"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2417"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2405"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2426"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2430"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2430"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2440"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2445"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2452"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2451"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2461"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2460"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2461"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2460"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2397,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2403,1"
      Dst: "[java.lang.reflect.Field].getDeclaringClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2405,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2407,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2407,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2409,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2418,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2422,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2405,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2437,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2438,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2441,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2447,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2451,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2452,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2455,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2457,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2461,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 36
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1509"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1517"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1518"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1517"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1521"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1522"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1526"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1529"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1542"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1531"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1531"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1537"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1550"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1551"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1550"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1554"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1514,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1515,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1519,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1520,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1527,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1533,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1543,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1544,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1546,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1553,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1573"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1577"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1581"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1582"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1590"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1584"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1588"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1579,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1579,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1586,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1587,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1589,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1595"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1596"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1595"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1599"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1597"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1596"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1597,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1598,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1599,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1605,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].next()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1563"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1559"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1560"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1561,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1561,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1563,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1565,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1566,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2187"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2190"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2191"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2192"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2191"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2194"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2199"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2202"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2203"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2203"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2209"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2189,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2193,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2201,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2203,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2203,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2210,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:223"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:225,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.JsonObject:227,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:229,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonObject:229,1"
      Dst: "[java.lang.Class].isArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.lang.Class].getComponentType()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.Long].toString(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 154
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1610"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1613"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1618"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1619"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1618"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1623"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1628"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1626"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1628"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1628"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1631"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1631"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1634"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1638"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1639"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1645"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1646"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1648"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1647"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1654"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1668"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1663"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1658"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1658"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1669"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1669"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1674"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1671"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1671"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1686"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1689"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1690"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1691"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1690"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1693"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1697"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1698"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1698"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1702"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1705"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1713"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1710"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1709"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1711"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1711"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1714"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1682"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1683"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1723"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1724"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1723"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1727"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1614,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1618,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1618,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1624,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1624,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1629,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1630,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1630,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1635,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1636,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1641,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1641,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1643,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1648,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1649,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1659,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1679,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1692,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1696,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1696,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1698,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1706,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1711,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 38
    BBCount: 78
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:242,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - Src: "net.jsign.json-io.util.io.JsonObject:245,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:259"
        BranchSideFuncs:
        - "isMap()"
        - "isCollection()"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:253"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:256"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:254"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:264"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:263"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:251,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:255,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:256,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:258,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 206
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:207"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:210"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:214"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:214"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:212"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:211,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:213,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:200"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:495,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:338,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].loadClass(java.lang.String,java.lang.ClassLoader)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:307"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:308"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:307"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:315"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:311"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:324"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:307,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:309,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:311,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:315,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].loadClass(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:322,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:322,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:322,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:322,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].loadClass(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getContextClassLoader()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:353"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:357"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:361"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:364"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:365"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:368"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:369"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:372"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:373"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:377"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:381"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:385"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:389"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:350"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:351"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:393"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:404"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:405"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:413"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:407"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:406"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:408"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:409"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:353,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:355,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:355,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:357,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:389,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:390,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:397,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:401,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:401,1"
      Dst: "[java.lang.Thread].getContextClassLoader()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:407,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:407,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 16
    BBCount: 35
  - functionName: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:88"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:87"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1732"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1735"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1743"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1743"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1747"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1748"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1752"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1753"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1755"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1760"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1760"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1765"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1771"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1782"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1771"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1778"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1779"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1791"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1792"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1791"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1795"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1737,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1737,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1738,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1738,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1740,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1744,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1745,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1750,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1750,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1758,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1760,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1761,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1761,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1767,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1772,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1774,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1780,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 30
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonObject].getId()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1872"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1876"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1877"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1878"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1877"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1881"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1882"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1882"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1887"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1891"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1892"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1912"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1894"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1900"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1908"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1902"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1901"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1913"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1920"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1925"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1877,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1882,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1882,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1884,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1885,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1897,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1899,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1902,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1902,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1903,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1904,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1904,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1913,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1915,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2172"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2170"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2169"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getType()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2140"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2141"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2142,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2143,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2143,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2144,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2146,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2146,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2150,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2151,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2155,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonObject].getId()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1800"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1803"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1804"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1804"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1809"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1813"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1814"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1834"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1816"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1820"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1822"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1830"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1825"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1824"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1823"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1835"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1841"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1842"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1848"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1848"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1857"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1848"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1804,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1804,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1807,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1808,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1819,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1821,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1824,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1824,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1825,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1826,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1826,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1835,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1837,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1850,1"
      Dst: "[java.util.LinkedHashMap].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1850,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1852,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1859,1"
      Dst: "[java.util.LinkedHashMap].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1859,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 28
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1934"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1939"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1939"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1939"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1939"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1945"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1949"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1950"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1952"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1957"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1957"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1969"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1971"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1975"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1986"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1986"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1987"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1991"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1999"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2002"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2003"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2006"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2003"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2006"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2007"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2008"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2007"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2010"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2009"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2009"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2008"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2012"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2014"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2015"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2018"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2019"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2024"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2025"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2024"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1979"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1980"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1939,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1939,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1943,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1944,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1947,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1947,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1955,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1957,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1958,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1960,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1960,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1963,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1965,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1976,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1976,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1981,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1982,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1993,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2003,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2003,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2005,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2009,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2009,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2013,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2017,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2021,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1979,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 27
    BBCount: 55
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Field].getType()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2034"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2039"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2038"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2035"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2038"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2035"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2036,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2037,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2038,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2038,1"
      Dst: "[java.lang.reflect.Field].getType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2106"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2110"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2111"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2110"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2121"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2129"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2110,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2115,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2117,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2118,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2119,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2121,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2123,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2131,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2045"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2048"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2054"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2058"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2059"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2068"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2061"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2065"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2069"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2076"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2077"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2076"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2082"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2082"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2091"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2082"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2050,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2052,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2053,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2056,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2056,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2064,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2066,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2069,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2071,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2082,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2084,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2084,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2086,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2093,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2093,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 20
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.reflect.Field].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2330"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2335"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2340"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2335"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2340"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2341"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2347"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2356"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2360"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2361"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2360"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2358"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2374"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2375"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2374"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2374"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2369"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2380"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2384"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2325,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2328,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2329,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2332,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2332,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2338,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2343,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2353,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2354,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2354,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2360,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2362,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2362,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2368,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2369,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2369,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2371,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2372,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2382,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 18
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].flush()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2525"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2530"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2527,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].close()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: 2536
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[java.io.Writer].close()"
    - "[java.util.Map].clear()"
    functionUses: 3
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2537,1"
      Dst: "[java.io.Writer].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2540,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:59,1"
      Dst: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.Map"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].openConnection()"
    - "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - "[java.net.URLConnection].setDoOutput(boolean)"
    - "[java.net.URLConnection].getRequestProperties()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.String].valueOf(int)"
    - "[java.net.URLConnection].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.net.HttpURLConnection].getResponseCode()"
    - "[java.net.URLConnection].getHeaderField(java.lang.String)"
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.net.HttpURLConnection].getErrorStream()"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - "[net.jsign.jca.RESTClient].getErrorMessage(java.util.Map)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.net.HttpURLConnection].getResponseMessage()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 119
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.RESTClient:67"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:71"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:72"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:73"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:78"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:79"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:81"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:82"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:90"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:84"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:93"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:97"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:109"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:68,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.jca.RESTClient:69,1"
      Dst: "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:70,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:71,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.jca.RESTClient:74,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.jca.RESTClient:74,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.jca.RESTClient:78,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.jca.RESTClient:80,1"
      Dst: "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:83,1"
      Dst: "[java.net.URLConnection].setDoOutput(boolean)"
    - Src: "net.jsign.jca.RESTClient:84,1"
      Dst: "[java.net.URLConnection].getRequestProperties()"
    - Src: "net.jsign.jca.RESTClient:84,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:87,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "net.jsign.jca.RESTClient:88,1"
      Dst: "[java.net.URLConnection].getOutputStream()"
    - Src: "net.jsign.jca.RESTClient:88,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.jca.RESTClient:91,1"
      Dst: "[java.net.HttpURLConnection].getResponseCode()"
    - Src: "net.jsign.jca.RESTClient:92,1"
      Dst: "[java.net.URLConnection].getHeaderField(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:94,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.jca.RESTClient:94,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.jca.RESTClient:96,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:100,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.RESTClient:101,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:105,1"
      Dst: "[java.net.HttpURLConnection].getErrorStream()"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[net.jsign.jca.RESTClient].getErrorMessage(java.util.Map)"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.net.HttpURLConnection].getResponseMessage()"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 31
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:47,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:48,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1155,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1381
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1382,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1586
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    - "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1731
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1703
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],char)"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1704,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1605
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.io.Reader].read(char[])"
    - "[java.io.Writer].write(char[],int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1608"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1612"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.IOUtils:1611"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1608,1"
      Dst: "[java.io.Reader].read(char[])"
    - Src: "net.jsign.commons.io.IOUtils:1609,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:412,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:453,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonReader].<init>(java.lang.String,java.util.Map,int)"
    - "[net.jsign.json-io.util.io.JsonReader].readObject()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:425"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:426"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:425"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:428"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:429"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:434"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:425,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.JsonReader:425,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:431,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:432,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.JsonReader:432,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:434,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:438,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].<init>(java.lang.String,java.util.Map,int)"
    - Src: "net.jsign.json-io.util.io.JsonReader:439,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].readObject()"
    - Src: "net.jsign.json-io.util.io.JsonReader:440,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonReader].<init>(java.lang.String,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.json-io.util.io.JsonReader].initializeFromArgs(java.util.Map)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.json-io.util.io.FastPushbackBufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:695,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:86,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:88,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:90,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:697,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].initializeFromArgs(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:698,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.json-io.util.io.JsonReader:699,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.json-io.util.io.JsonReader:699,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.json-io.util.io.JsonReader:699,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackBufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].initializeFromArgs(java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.JsonReader].setMissingFieldHandler(net.jsign.json-io.util.io.JsonReader$MissingFieldHandler)"
    - "[net.jsign.json-io.util.io.JsonReader].addReader(java.lang.Class,net.jsign.json-io.util.io.JsonReader$JsonClassReaderBase)"
    - "[java.lang.Iterable].iterator()"
    - "[net.jsign.json-io.util.io.JsonReader].addNotCustomReader(java.lang.Class)"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:722"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:725"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:729"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:732"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:735"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:745"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:739"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:738"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:737"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:749"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:756"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:751"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:751"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:750"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:760"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:760"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:759"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:724,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:726,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.JsonReader:727,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:728,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:729,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:731,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonReader:733,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:739,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonReader:739,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonReader:739,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonReader:741,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonReader:741,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonReader:739,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonReader:746,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].setMissingFieldHandler(net.jsign.json-io.util.io.JsonReader$MissingFieldHandler)"
    - Src: "net.jsign.json-io.util.io.JsonReader:753,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].addReader(java.lang.Class,net.jsign.json-io.util.io.JsonReader$JsonClassReaderBase)"
    - Src: "net.jsign.json-io.util.io.JsonReader:760,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonReader:762,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].addNotCustomReader(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].setMissingFieldHandler(net.jsign.json-io.util.io.JsonReader$MissingFieldHandler)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonReader$MissingFieldHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].addReader(java.lang.Class,net.jsign.json-io.util.io.JsonReader$JsonClassReaderBase)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonReader$JsonClassReaderBase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:352,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].addNotCustomReader(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:383,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.FastPushbackBufferedReader].<init>(java.io.Reader)"
    functionSourceFile: "net.jsign.json-io.util.io.FastPushbackBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.FastPushbackBufferedReader:22,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].readObject()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonReader].convertParsedMapsToJava(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonReader].useMaps()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:804"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:818"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:819"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:827"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:828"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:827"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:832"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:835"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:798,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.JsonReader:798,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    - Src: "net.jsign.json-io.util.io.JsonReader:799,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:803,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonReader:815,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.JsonReader:821,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonReader:821,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:822,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:823,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:824,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].convertParsedMapsToJava(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonReader:832,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].useMaps()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.json-io.util.io.FastPushbackReader"
    - "java.util.Map"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:104,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:55,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:107,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:107,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:37,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.JsonParser].readString()"
    - "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    - "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:253"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:254,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:257,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:264,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:269,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:270,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    - Src: "net.jsign.json-io.util.io.JsonParser:272,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:278,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:574,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:574,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - "[java.lang.StringBuilder].append(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:567,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readString()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].setLength(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.lang.StringBuilder].appendCodePoint(int)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:466"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:470"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:471"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:485"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:473"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:476"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:477"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:486"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:525"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:464"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:533"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:533"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:535"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:464"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:551"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:548"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:459,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:465,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:468,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:483,1"
      Dst: "[java.lang.StringBuilder].appendCodePoint(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:535,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.json-io.util.io.JsonParser:537,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:550,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 25
    BBCount: 37
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Number"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].isAllowNanAndInfinity()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].appendCodePoint(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:377"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:384"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:383"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:384"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:388"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:387"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:387"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:385"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:388"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:406"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:405"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:416"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:422"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:421"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:429"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:435"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:368,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonParser:380,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:385,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:387,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.jsign.json-io.util.io.JsonParser:395,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:402,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:403,1"
      Dst: "[java.lang.StringBuilder].appendCodePoint(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:431,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:431,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:435,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:435,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 34
  - functionName: "[net.jsign.json-io.util.io.JsonReader].isAllowNanAndInfinity()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.lang.Character].toLowerCase(char)"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:339"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:333"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:336"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:334,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.JsonParser:338,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:343,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    - Src: "net.jsign.json-io.util.io.JsonParser:344,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:579,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:579,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonParser].readString()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    - "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    functionUses: 0
    ICount: 117
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:133"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:154"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:189"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:158"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:163"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:172"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:173"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:176"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:177"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:181"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:202"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:202"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:205"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:216"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:222"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:225"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:226"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:230"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:126"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:122,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:132,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:135,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - Src: "net.jsign.json-io.util.io.JsonParser:136,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - Src: "net.jsign.json-io.util.io.JsonParser:142,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:156,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:163,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:165,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:167,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:201,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:210,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:215,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:243,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    - Src: "net.jsign.json-io.util.io.JsonParser:245,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 24
    BBCount: 44
  - functionName: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 651
    ICount: 33
    EdgeCount: 264
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:314"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:319"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:311,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:314,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:322,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:323,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:119"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:119"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:118,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:118,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.Number].byteValue()"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Number].floatValue()"
    - "[java.lang.Float].valueOf(float)"
    - "[java.lang.Number].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Number].shortValue()"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:133"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:142"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:143"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:153"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:156"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:159"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:165"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:174"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:124,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:126,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:131,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:131,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "net.jsign.json-io.util.io.JsonObject:136,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:136,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.json-io.util.io.JsonObject:141,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:141,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.json-io.util.io.JsonObject:146,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:151,1"
      Dst: "[java.lang.Number].shortValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:151,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "net.jsign.json-io.util.io.JsonObject:158,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:158,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:162,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:172,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:177,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$DateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[net.jsign.json-io.util.io.Readers].access$0()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$1()"
    - "[net.jsign.json-io.util.io.Readers].access$2()"
    - "[net.jsign.json-io.util.io.Readers].access$3()"
    - "[net.jsign.json-io.util.io.Readers].access$4()"
    - "[net.jsign.json-io.util.io.Readers].access$5()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$6()"
    - "[java.lang.String].toLowerCase()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].access$7()"
    - "[java.util.regex.Matcher].groupCount()"
    - "[net.jsign.json-io.util.io.Readers].access$8()"
    - "[net.jsign.json-io.util.io.Readers].access$9()"
    - "[java.lang.String].length()"
    - "[net.jsign.json-io.util.io.Readers].access$10()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Calendar].getInstance()"
    - "[java.util.Calendar].clear()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.util.Calendar].set(int,int,int)"
    - "[java.util.Calendar].set(int,int,int,int,int,int)"
    - "[java.util.Calendar].set(int,int)"
    - "[java.util.Calendar].getTime()"
    functionUses: 0
    ICount: 215
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:216"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:239"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:249"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:261"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:269"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:271"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:274"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:285"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:294"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:300"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:308"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:319"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:313"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:331"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:325"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:337"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:362"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:374"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:364"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:387"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:388"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:400"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:403"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:404"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:408"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:210,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:211,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$0()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:221,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:223,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:226,1"
      Dst: "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:230,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$1()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:240,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$2()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:250,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$3()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:260,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$4()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:270,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$5()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$6()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:293,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$7()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:300,1"
      Dst: "[java.util.regex.Matcher].groupCount()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:307,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$8()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:320,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$9()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:343,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:345,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$10()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:354,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:360,1"
      Dst: "[java.util.Calendar].getInstance()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:361,1"
      Dst: "[java.util.Calendar].clear()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:364,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:375,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:390,1"
      Dst: "[java.util.Calendar].set(int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:414,1"
      Dst: "[java.util.Calendar].set(int,int,int,int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:415,1"
      Dst: "[java.util.Calendar].set(int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:417,1"
      Dst: "[java.util.Calendar].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 25
    BBCount: 58
  - functionName: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.math.BigDecimal].toBigInteger()"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Number].doubleValue()"
    - "[java.math.BigDecimal].<init>(double)"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers:626"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:629"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:634"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:633"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:634"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:650"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:649"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:637"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:643"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:642"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:650"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:654"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:655"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:658"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:657"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:656"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:659"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:660"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:659"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:662"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:663"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:663"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:664"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:664"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:667"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:637,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers:637,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:643,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:643,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.Readers:653,1"
      Dst: "[java.math.BigDecimal].toBigInteger()"
    - Src: "net.jsign.json-io.util.io.Readers:657,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.Readers:661,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "net.jsign.json-io.util.io.Readers:661,1"
      Dst: "[java.math.BigDecimal].<init>(double)"
    - Src: "net.jsign.json-io.util.io.Readers:666,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:668,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:434,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:435,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:437,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigDecimal"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.math.BigDecimal].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.math.BigDecimal].<init>(java.math.BigInteger)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers:730"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:733"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:734"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:738"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:737"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:754"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:753"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:741"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:747"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:746"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:754"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:761"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:760"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:766"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:741,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers:741,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:747,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:747,1"
      Dst: "[java.math.BigDecimal].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.Readers:756,1"
      Dst: "[java.math.BigDecimal].<init>(java.math.BigInteger)"
    - Src: "net.jsign.json-io.util.io.Readers:760,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.Readers:765,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:767,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 24
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.util.List].toArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:306"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:309"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:312"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:315"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:316"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:300,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:305,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:308,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:310,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:318,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:323,1"
      Dst: "[java.util.List].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].convertParsedMapsToJava(net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].useMaps()"
    - "[net.jsign.json-io.util.io.MapResolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].<init>(net.jsign.json-io.util.io.JsonReader,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.Resolver].cleanup()"
    - "[java.util.Map].clear()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.json-io.util.io.JsonReader].getErrorMessage(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:879"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:879"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:878"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:895"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:898"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:879,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].useMaps()"
    - Src: "net.jsign.json-io.util.io.JsonReader:879,1"
      Dst: "[net.jsign.json-io.util.io.MapResolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - Src: "net.jsign.json-io.util.io.JsonReader:879,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:879,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].<init>(net.jsign.json-io.util.io.JsonReader,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonReader:880,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonReader:881,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonReader:882,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].cleanup()"
    - Src: "net.jsign.json-io.util.io.JsonReader:883,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.json-io.util.io.JsonReader:890,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].close()"
    - Src: "net.jsign.json-io.util.io.JsonReader:899,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.json-io.util.io.JsonReader:899,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getErrorMessage(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:899,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonReader].useMaps()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:854,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.JsonReader:854,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:854,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MapResolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    functionSourceFile: "net.jsign.json-io.util.io.MapResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MapResolver:53,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].<init>(net.jsign.json-io.util.io.JsonReader,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonReader"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - "[net.jsign.json-io.util.io.JsonReader].getMissingFieldHandler()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:75,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:77,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getMissingFieldHandler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].getMissingFieldHandler()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.json-io.util.io.JsonReader$MissingFieldHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].close()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: 936
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.Closeable].close()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:937"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:945"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:939,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.json-io.util.io.JsonReader:944,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonReader].getErrorMessage(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - "[java.lang.StringBuilder].append(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:950"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:953"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - Src: "net.jsign.json-io.util.io.JsonReader:952,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:517,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,java.util.Map,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:504,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,java.util.Map,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Map"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.json-io.util.io.JsonReader].<init>(java.io.InputStream,java.util.Map,int)"
    - "[net.jsign.json-io.util.io.JsonReader].readObject()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.json-io.util.io.JsonReader].adjustOutputMap(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:533"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:536"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:535,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:537,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.JsonReader:537,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:538,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.json-io.util.io.JsonReader:538,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.json-io.util.io.JsonReader:539,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].<init>(java.io.InputStream,java.util.Map,int)"
    - Src: "net.jsign.json-io.util.io.JsonReader:540,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].readObject()"
    - Src: "net.jsign.json-io.util.io.JsonReader:541,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].close()"
    - Src: "net.jsign.json-io.util.io.JsonReader:543,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].adjustOutputMap(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonReader].<init>(java.io.InputStream,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.json-io.util.io.JsonReader].initializeFromArgs(java.util.Map)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.json-io.util.io.FastPushbackBufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:682,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:86,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:88,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:90,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:684,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].initializeFromArgs(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:686,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.json-io.util.io.JsonReader:686,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackBufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].adjustOutputMap(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:603"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:607"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:613"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:613"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:608,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonReader:608,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonReader:610,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:611,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.jca.RESTClient].getErrorMessage(java.util.Map)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.RESTClient:117"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:119"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:123"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:126"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:128"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:129"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:132"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:117"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:115"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:117"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:117"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.RESTClient:117,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:123,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.jca.RESTClient:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:117,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:148,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[net.jsign.jca.ESignerSigningService].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.ESignerSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.jca.ESignerSigningService$lambda_new_0__161].bootstrap$(java.lang.String)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.ESignerSigningService:66,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.ESignerSigningService:56,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.ESignerSigningService:67,1"
      Dst: "[net.jsign.jca.ESignerSigningService$lambda_new_0__161].bootstrap$(java.lang.String)"
    - Src: "net.jsign.jca.ESignerSigningService:67,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.RESTClient:46,1"
      Dst: "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServiceJcaProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningService].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[net.jsign.jca.SigningService].getName()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$14].reuseKeyStorePassword()"
    functionSourceFile: "net.jsign.KeyStoreType$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 98
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4].get(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createInternalEntropySourceProvider()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].<init>(java.net.URL)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createInternalEntropySourceProvider()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createInternalEntropySourceProvider()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Boolean].booleanValue()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].<init>()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].<init>(java.security.SecureRandom,boolean)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].<init>()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].<init>(java.security.SecureRandom,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].<init>(java.security.SecureRandom,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].<init>(java.net.URL)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,java.net.URL)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 5
    ICount: 16
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "getEntropy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].schedule()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.Mac"
    - "int"
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Mac"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.Mac].getAlgorithmName()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.Utils:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.Utils:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.Utils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.Utils:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "getEntropy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update_Func(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].update(byte)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "update(byte)"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.msi.MSIStreamName:51,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].decode()"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.String].toCharArray()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 2
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIStreamName:60"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:77"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:76"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:62"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:58,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.msi.MSIStreamName:60,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.msi.MSIStreamName:65,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.msi.MSIStreamName].toString()"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.msi.MSIStreamName].decode()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:81,1"
      Dst: "[net.jsign.msi.MSIStreamName].decode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].decode()"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.String].toCharArray()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 2
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIStreamName:60"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:77"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:76"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:62"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:58,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.msi.MSIStreamName:60,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.msi.MSIStreamName:65,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.msi.MSIStreamName].compareTo(net.jsign.msi.MSIStreamName)"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.msi.MSIStreamName"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIStreamName:85"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:88"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:93"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:99"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:98"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:94"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:92,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.msi.MSIStreamName].compareTo(java.lang.Object)"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.msi.MSIStreamName].compareTo(net.jsign.msi.MSIStreamName)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:30,1"
      Dst: "[net.jsign.msi.MSIStreamName].compareTo(net.jsign.msi.MSIStreamName)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].compareTo(net.jsign.msi.MSIStreamName)"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.msi.MSIStreamName"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIStreamName:85"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:88"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:93"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:99"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:98"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:94"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:92,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 123
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2].<init>(int,boolean,net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "boolean"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].access$000()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].access$100(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].scaleY(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[],int,int,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    functionUses: 0
    ICount: 136
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].access$100(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].scaleX(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].scaleY(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[],int,int,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 19
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2].checkExisting(net.jsign.bouncycastle.math.ec.WNafPreCompInfo,int,int,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2].checkTable(net.jsign.bouncycastle.math.ec.ECPoint[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafUtil$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.CommandLine$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.commons.cli.CommandLine].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine$Builder:387,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine$Builder:392,1"
      Dst: "[net.jsign.commons.cli.CommandLine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine$Builder].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.CommandLine$Builder"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine$Builder:403,1"
      Dst: "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:351,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine$Builder].addArg(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.CommandLine$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine$Builder:416,1"
      Dst: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:341,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine$Builder].build()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.CommandLine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].init(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator].exponentiateX(long,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asBytes(long[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].copy(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiply(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].oneAsLongs()"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].square(long[],long[])"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-2"
        BranchSideFuncs:
        - "multiply(long[],long[])"
        - "asBytes(long[],byte[])"
        - "square(long[],long[])"
        - "copy(long[],long[])"
        - "oneAsLongs()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-2"
        BranchSideFuncs:
        - "multiply(long[],long[])"
        - "asBytes(long[],byte[])"
        - "square(long[],long[])"
        - "copy(long[],long[])"
        - "oneAsLongs()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-2"
        BranchSideFuncs:
        - "multiply(long[],long[])"
        - "asBytes(long[],byte[])"
        - "square(long[],long[])"
        - "copy(long[],long[])"
        - "oneAsLongs()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].oneAsLongs()"
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].copy(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiply(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.gcm.BasicGCMExponentiator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asBytes(long[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$32:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].toBigInteger(int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].squareN(int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createCipher(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.Cipher"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.Cipher].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.Cipher].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createMac(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.Mac"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.Mac].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.Mac].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createKeyAgreement(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.KeyAgreement"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.KeyAgreement].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.KeyAgreement].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameterGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.AlgorithmParameterGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.AlgorithmParameterGenerator].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.AlgorithmParameterGenerator].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.AlgorithmParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.AlgorithmParameters].getInstance(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createKeyGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.KeyGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.KeyGenerator].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.KeyGenerator].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createKeyFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyFactory].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.KeyFactory].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSecretKeyFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.SecretKeyFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.SecretKeyFactory].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.SecretKeyFactory].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createKeyPairGenerator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyPairGenerator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyPairGenerator].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.KeyPairGenerator].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createMessageDigest(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String,java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Signature].getInstance(java.lang.String,java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.Signature].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createCertificateFactory(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertificateFactory"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSecureRandom(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.SecureRandom].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createCertPathBuilder(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertPathBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertPathBuilder].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertPathBuilder].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createCertPathValidator(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertPathValidator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertPathValidator].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertPathValidator].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createCertStore(java.lang.String,java.security.cert.CertStoreParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.CertStore"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.cert.CertStoreParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertStore].getInstance(java.lang.String,java.security.cert.CertStoreParameters,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.cert.CertStore].getInstance(java.lang.String,java.security.cert.CertStoreParameters,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createExemptionMechanism(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.crypto.ExemptionMechanism"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.ExemptionMechanism].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[javax.crypto.ExemptionMechanism].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createKeyStore(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.KeyStore"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.WTauNafPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].getPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].multiplyFromTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].multiplyFromTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].multiplyFromTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.AbstractLogger$init__4].bootstrap$()"
    functionSourceFile: "net.jsign.log4j.spi.AbstractLogger$init__4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Supplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger$init__4].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.AbstractLogger$init__4:-1,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger$init__4].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.AbstractLogger$init__4].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.AbstractLogger$init__4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.AbstractLogger$init__4:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.AbstractLogger$init__4].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.AbstractLogger$init__4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.AbstractLogger$init__4:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.AbstractLogger$init__4].get()"
    functionSourceFile: "net.jsign.log4j.spi.AbstractLogger$init__4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.internal.DefaultLogBuilder].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.AbstractLogger$init__4:-1,1"
      Dst: "[net.jsign.log4j.internal.DefaultLogBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.internal.DefaultLogBuilder].<init>()"
    functionSourceFile: "net.jsign.log4j.internal.DefaultLogBuilder"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.internal.DefaultLogBuilder].<init>(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.Level)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.internal.DefaultLogBuilder:60,1"
      Dst: "[net.jsign.log4j.internal.DefaultLogBuilder].<init>(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.Level)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.internal.DefaultLogBuilder].<init>(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.internal.DefaultLogBuilder"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.spi.ExtendedLogger"
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getId()"
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.internal.DefaultLogBuilder:56"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.internal.DefaultLogBuilder:52"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.internal.DefaultLogBuilder:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.internal.DefaultLogBuilder:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.internal.DefaultLogBuilder:55,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.log4j.internal.DefaultLogBuilder:55,1"
      Dst: "[java.lang.Thread].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Constants].size(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    - "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Constants:72,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - Src: "net.jsign.log4j.util.Constants:72,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "net.jsign.log4j.util.PropertiesUtil"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:272"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:271,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Constants].isClassAvailable(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil].loadClass(java.lang.String)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Constants:83"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Constants:83"
        BranchSideFuncs:
        - "loadClass(java.lang.String)"
      - BranchSide: "net.jsign.log4j.util.Constants:82"
        BranchSideFuncs:
        - "loadClass(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.util.Constants:83,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].loadClass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.LoaderUtil].loadClass(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 7
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil].isIgnoreTccl()"
    - "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    functionUses: 5
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:137"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:140"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:142"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:137,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].isIgnoreTccl()"
    - Src: "net.jsign.log4j.util.LoaderUtil:138,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.log4j.util.LoaderUtil:141,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:143,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.LoaderUtil].isIgnoreTccl()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 6
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:234"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:238"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String,java.lang.String)"
        - "getProperties()"
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:237"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.LoaderUtil:236"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:234"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String,java.lang.String)"
        - "getProperties()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:236"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:234"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String,java.lang.String)"
        - "getProperties()"
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:235,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - Src: "net.jsign.log4j.util.LoaderUtil:235,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.log4j.util.LoaderUtil:236,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.util.LoaderUtil:236,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.log4j.util.LoaderUtil:236,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.log4j.util.LoaderUtil:238,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "net.jsign.log4j.util.PropertiesUtil"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:408"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:406"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:407,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:396,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$3].run()"
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.security.PrivilegedAction].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 4
    ICount: 15
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil:85"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil:90"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil:89"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil:88,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.PrivilegedAction].run()"
    - Src: "net.jsign.log4j.util.LoaderUtil:90,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.Constants].<init>()"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.Constants:102,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Constants].getMajorVersion()"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Constants].getMajorVersion(java.lang.String)"
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Constants:106,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.Constants:106,1"
      Dst: "[net.jsign.log4j.util.Constants].getMajorVersion(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Constants].getMajorVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Constants:114"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Constants:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Constants:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Constants:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Constants:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Constants:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Constants:110,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.log4j.util.Constants:113,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.Constants].getMajorVersion(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Constants"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Constants:114"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Constants:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Constants:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Constants:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Constants:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Constants:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Constants:110,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.log4j.util.Constants:113,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$1].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$1:55,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$1].initialValue()"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.text.SimpleDateFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$1:59,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].toBigInteger(int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].squareN(int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].toCopyOption(java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.CopyOption[]"
    argCount: 1
    argTypes:
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:40"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:40,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].toCopyOption(java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:56,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:59,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].toCopyOption(java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.file.PathFilter"
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].toCopyOption(java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:75,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:78,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].toCopyOption(java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:90,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 28
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:95"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:98"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:97"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:98"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:101"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:101"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:105"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:105"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:106"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:98,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:101,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:105,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:105,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:115"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:118"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:122,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].getCopyOptions()"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.CopyOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:116,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].getSourceDirectory()"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].getTargetDirectory()"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].hashCode()"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    - "[java.util.Objects].hash(java.lang.Object[])"
    functionUses: 4
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:142,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:143,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:144,1"
      Dst: "[java.util.Objects].hash(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].hash(java.lang.Object[])"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:136,1"
      Dst: "[java.util.Objects].hash(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].createDirectory(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:152"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:151,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:152,1"
      Dst: "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:153,1"
      Dst: "[java.nio.file.Files].createDirectory(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:155,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - "[java.nio.file.Path].toString()"
    - "[java.nio.file.Path].resolve(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].toString()"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].resolve(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:148"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:147,1"
      Dst: "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - "[java.nio.file.Path].toString()"
    - "[java.nio.file.Path].resolve(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].toString()"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].resolve(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:173,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - "[java.nio.file.Path].toString()"
    - "[java.nio.file.Path].resolve(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].relativize(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].toString()"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:168,1"
      Dst: "[java.nio.file.Path].resolve(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:90,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:181"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:184"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:183"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:181"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:184"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:181,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:181,1"
      Dst: "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:182,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[java.nio.file.attribute.BasicFileAttributes].size()"
    - "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].size()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].visitFile(java.lang.Object,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:37,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:173,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].copy(java.nio.file.Path,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].preVisitDirectory(java.lang.Object,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:37,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CopyDirectoryVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CopyDirectoryVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].createDirectory(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CopyDirectoryVisitor:152"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CopyDirectoryVisitor:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:151,1"
      Dst: "[net.jsign.commons.io.file.CopyDirectoryVisitor].resolveRelativeAsString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:152,1"
      Dst: "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:153,1"
      Dst: "[java.nio.file.Files].createDirectory(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.file.CopyDirectoryVisitor:155,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.ThreadContext$EmptyIterator].<init>()"
    functionSourceFile: "net.jsign.log4j.ThreadContext$EmptyIterator"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.ThreadContext$EmptyIterator:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    functionSourceFile: "net.jsign.log4j.ThreadContext$EmptyIterator"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 70
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    functionSourceFile: "net.jsign.log4j.ThreadContext$EmptyIterator"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 86
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.ThreadContext$EmptyIterator:167,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.ThreadContext$EmptyIterator].remove()"
    functionSourceFile: "net.jsign.log4j.ThreadContext$EmptyIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.ThreadContext$EmptyIterator].<init>(net.jsign.log4j.ThreadContext$1)"
    functionSourceFile: "net.jsign.log4j.ThreadContext$EmptyIterator"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.ThreadContext$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.ThreadContext$EmptyIterator:158,1"
      Dst: "[net.jsign.log4j.ThreadContext$EmptyIterator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLFactory].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLFactory].createSequence(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.DLSequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLFactory].createSet(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.DLSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfTrailingZeros(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfTrailingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "int"
    - "byte"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - "[java.math.BigInteger].longValue()"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - "[java.math.BigInteger].longValue()"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF3_1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "int"
    - "byte"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - "[java.math.BigInteger].longValue()"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(int,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - "[java.math.BigInteger].longValue()"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.RadixConverter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].divideAndRemainder(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.RadixConverter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(long,int,short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3_1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateB_FF1(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].pow(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].pow(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateP_FF1(int,byte,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "int"
    - "byte"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateTweak64_FF3_1(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF1(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,int,byte[],short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    - "int"
    - "int"
    - "short[]"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkCipher(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkData(boolean,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkLength(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implDecryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].implEncryptFF3w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF3_1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "short[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateModUV(java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].calculateY_FF3(net.jsign.bouncycastle.crypto.BlockCipher,byte[],int,int,short[],net.jsign.bouncycastle.crypto.util.RadixConverter)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].fromEncoding(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].toEncoding(java.math.BigInteger,int,short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].num(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].prf(net.jsign.bouncycastle.crypto.BlockCipher,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.spi.JScriptSignableProvider].<init>()"
    functionSourceFile: "net.jsign.spi.JScriptSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.JScriptSignableProvider:37,1"
      Dst: "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.JScriptSignableProvider].create(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.spi.JScriptSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.Signable"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.JScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.JScriptSignableProvider:42,1"
      Dst: "[net.jsign.script.JScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.JScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.script.JScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.WSHScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.JScript:63,1"
      Dst: "[net.jsign.script.WSHScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger[]"
    - "java.math.BigInteger[]"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ScaleXPointMap].<init>(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$12:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URI)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.CloseableURLConnection"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.net.URI].toURL()"
    - "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:36,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.CloseableURLConnection:36,1"
      Dst: "[java.net.URI].toURL()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:36,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.CloseableURLConnection"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].openConnection()"
    - "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.net.URLConnection].getURL()"
    - "[java.net.URLConnection].<init>(java.net.URL)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.net.URLConnection].getURL()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.net.URLConnection].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.CloseableURLConnection"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].openConnection()"
    - "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.net.URLConnection].getURL()"
    - "[java.net.URLConnection].<init>(java.net.URL)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.net.URLConnection].getURL()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:46,1"
      Dst: "[java.net.URLConnection].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].addRequestProperty(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].addRequestProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:52,1"
      Dst: "[java.net.URLConnection].addRequestProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].close()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:57,1"
      Dst: "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.HttpURLConnection].disconnect()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:460"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:463"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:462"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:461,1"
      Dst: "[java.net.HttpURLConnection].disconnect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].connect()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].connect()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:62,1"
      Dst: "[java.net.URLConnection].connect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:67,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getAllowUserInteraction()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getAllowUserInteraction()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:72,1"
      Dst: "[java.net.URLConnection].getAllowUserInteraction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getConnectTimeout()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getConnectTimeout()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:77,1"
      Dst: "[java.net.URLConnection].getConnectTimeout()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContent()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContent()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:82,1"
      Dst: "[java.net.URLConnection].getContent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContent(java.lang.Class[])"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContent(java.lang.Class[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:87,1"
      Dst: "[java.net.URLConnection].getContent(java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContentEncoding()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContentEncoding()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:92,1"
      Dst: "[java.net.URLConnection].getContentEncoding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContentLength()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContentLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:97,1"
      Dst: "[java.net.URLConnection].getContentLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContentLengthLong()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContentLengthLong()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:102,1"
      Dst: "[java.net.URLConnection].getContentLengthLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getContentType()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getContentType()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:107,1"
      Dst: "[java.net.URLConnection].getContentType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getDate()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getDate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:112,1"
      Dst: "[java.net.URLConnection].getDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getDefaultUseCaches()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getDefaultUseCaches()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:117,1"
      Dst: "[java.net.URLConnection].getDefaultUseCaches()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getDoInput()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getDoInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:122,1"
      Dst: "[java.net.URLConnection].getDoInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getDoOutput()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getDoOutput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:127,1"
      Dst: "[java.net.URLConnection].getDoOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getExpiration()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getExpiration()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:132,1"
      Dst: "[java.net.URLConnection].getExpiration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderField(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderField(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:137,1"
      Dst: "[java.net.URLConnection].getHeaderField(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderField(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderField(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:142,1"
      Dst: "[java.net.URLConnection].getHeaderField(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderFieldDate(java.lang.String,long)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderFieldDate(java.lang.String,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:147,1"
      Dst: "[java.net.URLConnection].getHeaderFieldDate(java.lang.String,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderFieldInt(java.lang.String,int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderFieldInt(java.lang.String,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:152,1"
      Dst: "[java.net.URLConnection].getHeaderFieldInt(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderFieldKey(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderFieldKey(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:157,1"
      Dst: "[java.net.URLConnection].getHeaderFieldKey(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderFieldLong(java.lang.String,long)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderFieldLong(java.lang.String,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:162,1"
      Dst: "[java.net.URLConnection].getHeaderFieldLong(java.lang.String,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getHeaderFields()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getHeaderFields()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:167,1"
      Dst: "[java.net.URLConnection].getHeaderFields()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getIfModifiedSince()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getIfModifiedSince()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:172,1"
      Dst: "[java.net.URLConnection].getIfModifiedSince()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getInputStream()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getInputStream()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:177,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getLastModified()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getLastModified()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:182,1"
      Dst: "[java.net.URLConnection].getLastModified()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getOutputStream()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getOutputStream()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:187,1"
      Dst: "[java.net.URLConnection].getOutputStream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getPermission()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Permission"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getPermission()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:192,1"
      Dst: "[java.net.URLConnection].getPermission()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getReadTimeout()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getReadTimeout()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:197,1"
      Dst: "[java.net.URLConnection].getReadTimeout()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getRequestProperties()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getRequestProperties()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:202,1"
      Dst: "[java.net.URLConnection].getRequestProperties()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getRequestProperty(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getRequestProperty(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:207,1"
      Dst: "[java.net.URLConnection].getRequestProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getURL()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getURL()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:212,1"
      Dst: "[java.net.URLConnection].getURL()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getUseCaches()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getUseCaches()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:217,1"
      Dst: "[java.net.URLConnection].getUseCaches()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:222,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setAllowUserInteraction(boolean)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setAllowUserInteraction(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:227,1"
      Dst: "[java.net.URLConnection].setAllowUserInteraction(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setConnectTimeout(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setConnectTimeout(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:232,1"
      Dst: "[java.net.URLConnection].setConnectTimeout(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setDefaultUseCaches(boolean)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setDefaultUseCaches(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:237,1"
      Dst: "[java.net.URLConnection].setDefaultUseCaches(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setDoInput(boolean)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setDoInput(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:242,1"
      Dst: "[java.net.URLConnection].setDoInput(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setDoOutput(boolean)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setDoOutput(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:247,1"
      Dst: "[java.net.URLConnection].setDoOutput(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setIfModifiedSince(long)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setIfModifiedSince(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:252,1"
      Dst: "[java.net.URLConnection].setIfModifiedSince(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setReadTimeout(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setReadTimeout(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:257,1"
      Dst: "[java.net.URLConnection].setReadTimeout(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:262,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setUseCaches(boolean)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setUseCaches(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:267,1"
      Dst: "[java.net.URLConnection].setUseCaches(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].toString()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].toString()"
    - "[java.net.URLConnection].toString()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:272,1"
      Dst: "[java.net.URLConnection].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger[]"
    - "java.math.BigInteger[]"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].<init>()"
    - "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].init(java.security.SecureRandom)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].init(java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].getUpdateOutputSize(int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].getUpdateOutputSize(int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].padCount(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].addPadding(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding].padCount(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuerUID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.channels.FileChannels].contentEquals(java.nio.channels.FileChannel,java.nio.channels.FileChannel,int)"
    functionSourceFile: "net.jsign.commons.io.channels.FileChannels"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "java.nio.channels.FileChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    - "[java.nio.ByteBuffer].allocateDirect(int)"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.channels.FileChannels:45"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:49"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:48"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:51"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:54"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:58"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:57"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:58"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:57"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:68"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:70"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:71"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.channels.FileChannels:45,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.channels.FileChannels:49,1"
      Dst: "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    - Src: "net.jsign.commons.io.channels.FileChannels:58,1"
      Dst: "[java.nio.ByteBuffer].allocateDirect(int)"
    - Src: "net.jsign.commons.io.channels.FileChannels:61,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.commons.io.channels.FileChannels:63,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.commons.io.channels.FileChannels:66,1"
      Dst: "[java.nio.ByteBuffer].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    functionSourceFile: "net.jsign.commons.io.channels.FileChannels"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.channels.FileChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.FileChannel].size()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.channels.FileChannels:78"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.channels.FileChannels:78,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    functionSourceFile: "net.jsign.commons.io.channels.FileChannels"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.channels.FileChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.FileChannel].size()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.channels.FileChannels:78"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.channels.FileChannels:78,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.channels.FileChannels].<init>()"
    functionSourceFile: "net.jsign.commons.io.channels.FileChannels"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.channels.FileChannels:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 118
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.function.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.jca.HashiCorpVaultSigningService$lambda_new_0__52].bootstrap$(java.lang.String)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.HashiCorpVaultSigningService:59"
      Branch Sides:
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:46,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[net.jsign.jca.HashiCorpVaultSigningService$lambda_new_0__52].bootstrap$(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].getName()"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].aliases()"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.jca.RESTClient].get(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.HashiCorpVaultSigningService:83"
      Branch Sides:
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:78,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:81,1"
      Dst: "[net.jsign.jca.RESTClient].get(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:82,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:87,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.jca.RESTClient].get(java.lang.String)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:55,1"
      Dst: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.Map"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].openConnection()"
    - "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - "[java.net.URLConnection].setDoOutput(boolean)"
    - "[java.net.URLConnection].getRequestProperties()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.String].valueOf(int)"
    - "[java.net.URLConnection].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.net.HttpURLConnection].getResponseCode()"
    - "[java.net.URLConnection].getHeaderField(java.lang.String)"
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.net.HttpURLConnection].getErrorStream()"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - "[net.jsign.jca.RESTClient].getErrorMessage(java.util.Map)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.net.HttpURLConnection].getResponseMessage()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 119
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.RESTClient:67"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:71"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:72"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:73"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:78"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:79"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:81"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:82"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:90"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:84"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:93"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:97"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:106"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.RESTClient:109"
      Branch Sides:
      - BranchSide: "net.jsign.jca.RESTClient:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.RESTClient:67,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:68,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.jca.RESTClient:69,1"
      Dst: "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:70,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:71,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.jca.RESTClient:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.jca.RESTClient:74,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.jca.RESTClient:74,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.jca.RESTClient:78,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.jca.RESTClient:80,1"
      Dst: "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:83,1"
      Dst: "[java.net.URLConnection].setDoOutput(boolean)"
    - Src: "net.jsign.jca.RESTClient:84,1"
      Dst: "[java.net.URLConnection].getRequestProperties()"
    - Src: "net.jsign.jca.RESTClient:84,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:87,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "net.jsign.jca.RESTClient:88,1"
      Dst: "[java.net.URLConnection].getOutputStream()"
    - Src: "net.jsign.jca.RESTClient:88,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.jca.RESTClient:91,1"
      Dst: "[java.net.HttpURLConnection].getResponseCode()"
    - Src: "net.jsign.jca.RESTClient:92,1"
      Dst: "[java.net.URLConnection].getHeaderField(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:94,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.jca.RESTClient:94,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.jca.RESTClient:96,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:100,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.RESTClient:101,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.RESTClient:105,1"
      Dst: "[java.net.HttpURLConnection].getErrorStream()"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[net.jsign.jca.RESTClient].getErrorMessage(java.util.Map)"
    - Src: "net.jsign.jca.RESTClient:107,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.net.HttpURLConnection].getResponseMessage()"
    - Src: "net.jsign.jca.RESTClient:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 31
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].getCertificateChain(java.lang.String)"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:95,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].getPrivateKey(java.lang.String,char[])"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.jca.SigningServicePrivateKey"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.UnrecoverableKeyException].<init>(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.jca.RESTClient].get(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.lang.String].toUpperCase()"
    - "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String,net.jsign.jca.SigningService)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.HashiCorpVaultSigningService:100"
      Branch Sides:
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.HashiCorpVaultSigningService:104"
      Branch Sides:
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.HashiCorpVaultSigningService:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:100,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:101,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:104,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:105,1"
      Dst: "[java.security.UnrecoverableKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:111,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:111,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:111,1"
      Dst: "[net.jsign.jca.RESTClient].get(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:114,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:117,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:119,1"
      Dst: "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:120,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.jca.RESTClient].get(java.lang.String)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:55,1"
      Dst: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String,net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServicePrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServicePrivateKey:62,1"
      Dst: "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServicePrivateKey].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.SigningServicePrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServicePrivateKey:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.SigningServicePrivateKey:40,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].sign(net.jsign.jca.SigningServicePrivateKey,java.lang.String,byte[])"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "net.jsign.jca.SigningServicePrivateKey"
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - "[java.security.MessageDigest].digest(byte[])"
    - "[net.jsign.jca.SigningServicePrivateKey].getId()"
    - "[java.lang.String].substring(int)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Base64].getEncoder()"
    - "[java.util.Base64$Encoder].encodeToString(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    - "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Base64].getDecoder()"
    - "[java.util.Base64$Decoder].decode(java.lang.String)"
    - "[java.security.GeneralSecurityException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:126,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:126,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:126,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:126,1"
      Dst: "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:127,1"
      Dst: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:127,1"
      Dst: "[java.security.MessageDigest].digest(byte[])"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:129,1"
      Dst: "[net.jsign.jca.SigningServicePrivateKey].getId()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:131,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:133,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:135,1"
      Dst: "[java.util.Base64].getEncoder()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:135,1"
      Dst: "[java.util.Base64$Encoder].encodeToString(byte[])"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:140,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:140,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:140,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:140,1"
      Dst: "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:141,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:143,1"
      Dst: "[java.util.Base64].getDecoder()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:143,1"
      Dst: "[java.util.Base64$Decoder].decode(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:145,1"
      Dst: "[java.security.GeneralSecurityException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.DigestAlgorithm"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[net.jsign.DigestAlgorithm].values()"
    - "[java.lang.Enum].name()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.DigestAlgorithm:68"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:73"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:74"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:79"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:72,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.DigestAlgorithm:72,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "net.jsign.DigestAlgorithm:73,1"
      Dst: "[net.jsign.DigestAlgorithm].values()"
    - Src: "net.jsign.DigestAlgorithm:74,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.DigestAlgorithm:74,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.DigestAlgorithm].values()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.DigestAlgorithm[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:31,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 13
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:109,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "net.jsign.DigestAlgorithm:111,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.jca.SigningServicePrivateKey].getId()"
    functionSourceFile: "net.jsign.jca.SigningServicePrivateKey"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:314,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:315,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:316,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:317,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.lang.String].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:322,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.jca.RESTClient].post(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:59,1"
      Dst: "[net.jsign.jca.RESTClient].query(java.lang.String,java.lang.String,java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.HashiCorpVaultSigningService].lambda$new$0(java.lang.String,java.net.HttpURLConnection)"
    functionSourceFile: "net.jsign.jca.HashiCorpVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.net.HttpURLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.HashiCorpVaultSigningService:59,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getOctetStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 101
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 5
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].halfTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hasFastTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].trace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 29
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getRepresentation()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 110
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 7
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "lineSeparator()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionUses: 5
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-2"
        BranchSideFuncs:
        - "getCurve()"
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "getG()"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-2"
        BranchSideFuncs:
        - "getCurve()"
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "getG()"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-2"
        BranchSideFuncs:
        - "getCurve()"
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "getG()"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    functionUses: 4
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.spec.KeySpec"
    argCount: 2
    argTypes:
    - "java.security.Key"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - "[java.security.spec.RSAPublicKeySpec].<init>(java.math.BigInteger,java.math.BigInteger)"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[java.security.spec.RSAPrivateKeySpec].<init>(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionUses: 0
    ICount: 109
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.RSAPublicKeySpec].<init>(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].<init>(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].getName()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].getName()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].getName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.math.BigInteger].intValue()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].validate(java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].validate(java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[java.util.Random].nextInt()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1Null)"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].getD()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getPublicKeyParamSet()"
    - "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getDigestParamSet()"
    - "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getEncryptionParamSet()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].extractBytes(byte[],int,int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].getName()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getSeed()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(int,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1BitString,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 198
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DSAParameter].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1Null)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].getD()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getPublicKeyParamSet()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getDigestParamSet()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getEncryptionParamSet()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].extractBytes(byte[],int,int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].getName()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getSeed()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(int,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1BitString,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 34
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "<init>(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "<init>(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 1
    ICount: 6
    EdgeCount: 107
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DSAParameter].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DSAParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DSAParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DSAParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1Null)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Null"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962Parameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].getD()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getPublicKeyParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getDigestParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters].getEncryptionParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECGOST3410Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].extractBytes(byte[],int,int,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962Parameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962Parameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962Parameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 29
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(java.math.BigInteger)"
        - "<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs:
        - "isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
        - "isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9Curve:-2"
        BranchSideFuncs:
        - "isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
        - "isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(int,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1BitString,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X448].generatePublicKey(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X448].generatePublicKey(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519].generatePublicKey(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519].generatePublicKey(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].generatePublicKey(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].generatePublicKey(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].encode(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].encode(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].encode(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint,byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].encodePublicPoint(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].generatePublicKey(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].generatePublicKey(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuilder:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].engineTranslateKey(java.security.Key)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Key"
    argCount: 1
    argTypes:
    - "java.security.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.interfaces.RSAPublicKey)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.interfaces.RSAPrivateCrtKey)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.interfaces.RSAPrivateKey)"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.interfaces.RSAPublicKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.interfaces.RSAPrivateCrtKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.interfaces.RSAPrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.interfaces.RSAPublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.interfaces.RSAPrivateCrtKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPrivateCrtKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Hashtable"
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.interfaces.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.PKCS8EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.spec.RSAPrivateCrtKeySpec)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.spec.RSAPrivateKeySpec)"
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.PKCS8EncodedKeySpec].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.spec.RSAPrivateCrtKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.spec.RSAPrivateKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[java.math.BigInteger].intValue()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(java.security.spec.RSAPrivateCrtKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.RSAPrivateCrtKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getPublicExponent()"
    - "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeP()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeQ()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeExponentP()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeExponentQ()"
    - "[java.security.spec.RSAPrivateCrtKeySpec].getCrtCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeExponentP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getPrimeExponentQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].getCrtCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.spec.RSAPrivateKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.RSAPrivateKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].remainder(java.math.BigInteger)"
    functionUses: 0
    ICount: 198
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].remainder(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 39
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DSAParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.params.DSAParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getObjectInTag(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getObjectInTag(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getObjectInTag(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag(int)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.sec.ECPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBigNumPositive()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBigNumPositive()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBigNumPositive()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DSAParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].validate(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].validate(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].validate(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DSAParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].validatePublicKeyPartialExport(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519].validatePublicKeyPartialExport(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHBuffer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.spec.RSAPublicKeySpec)"
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.spec.RSAPublicKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(java.security.spec.RSAPublicKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.RSAPublicKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.security.spec.RSAPublicKeySpec].getModulus()"
    - "[java.security.spec.RSAPublicKeySpec].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.spec.RSAPublicKeySpec].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.security.spec.RSAPublicKeySpec].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[java.math.BigInteger].intValue()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].populateFromPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].hasAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].getAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.operator.ContentVerifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$100(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$200(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[java.security.cert.Certificate].getPublicKey()"
    - "[java.security.Signature].initVerify(java.security.PublicKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 38
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "access$100(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder)"
        - "access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "access$200(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "access$100(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder)"
        - "access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "access$200(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.security.cert.Certificate].getPublicKey()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$100(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.security.Signature].initVerify(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$200(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.operator.ContentVerifier"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createCompositeVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createCompositeVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createCompositeVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.operator.ContentVerifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier].<init>(java.security.Signature[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 48
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getPublicKeys()"
        - "getObjectAt(int)"
        - "<init>(java.security.Signature[])"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getPublicKeys()"
        - "getObjectAt(int)"
        - "<init>(java.security.Signature[])"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getPublicKeys()"
        - "getObjectAt(int)"
        - "<init>(java.security.Signature[])"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getPublicKeys()"
        - "getObjectAt(int)"
        - "<init>(java.security.Signature[])"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier].<init>(java.security.Signature[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.Signature"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[java.security.Signature].initVerify(java.security.PublicKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.security.Signature].initVerify(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.security.AlgorithmParameters].init(byte[])"
    - "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getEncoded()"
        - "notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].notDefaultPSSParams(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.GeneralSecurityException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier].<init>(java.security.Signature[])"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Signature[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 33
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-2"
        BranchSideFuncs:
        - "createStream(java.security.Signature)"
        - "<init>(java.lang.String)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-2"
        BranchSideFuncs:
        - "createStream(java.security.Signature)"
        - "<init>(java.lang.String)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-2"
        BranchSideFuncs:
        - "createStream(java.security.Signature)"
        - "<init>(java.lang.String)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-2"
        BranchSideFuncs:
        - "createStream(java.security.Signature)"
        - "<init>(java.lang.String)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-2"
        BranchSideFuncs:
        - "createStream(java.security.Signature)"
        - "<init>(java.lang.String)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.OutputStreamFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].<init>(java.security.Signature)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.OutputStreamFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].<init>(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$100(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].access$200(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.security.Signature"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createRawSig(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createRawSig(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].createRawSig(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.Signature"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createRawSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[java.security.Signature].initVerify(java.security.PublicKey)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-2"
        BranchSideFuncs:
        - "createRawSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createRawSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.security.Signature].initVerify(java.security.PublicKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createRawSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.Signature"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils].loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    functionUses: 1
    ICount: 27
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "createSignature(java.lang.String)"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "createAlgorithmParameters(java.lang.String)"
        - "getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSignature(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createAlgorithmParameters(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.AlgorithmParametersUtils].loadParameters(java.security.AlgorithmParameters,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.AlgorithmParameters].getParameterSpec(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.Signature].setParameter(java.security.spec.AlgorithmParameterSpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature,java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.Signature"
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,java.security.Signature)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "java.security.Signature"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader$CollectionFactory].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader$CollectionFactory"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.JsonReader$CollectionFactory:265,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader$CollectionFactory].newInstance(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader$CollectionFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:269"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:277"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:280"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:281"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:269,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:271,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:275,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:279,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:285,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:285,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:285,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonReader$CollectionFactory:285,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256AESCBC192].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256AESCBC192"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHA256AESCBC192:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSM3].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSM3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withSM3:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertID[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getPolicies()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.PolicyInformation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.PolicyInformation"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$JsonStringWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$JsonStringWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$JsonStringWriter:163,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$JsonStringWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$JsonStringWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$JsonStringWriter:167,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$JsonStringWriter:168,1"
      Dst: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers:404,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$JsonStringWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$JsonStringWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$JsonStringWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$JsonStringWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$JsonStringWriter:175,1"
      Dst: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers:404,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.smartcardio.CardChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SmartCard].<init>(javax.smartcardio.CardChannel)"
    - "[net.jsign.jca.OpenPGPCard].select()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:66,1"
      Dst: "[net.jsign.jca.SmartCard].<init>(javax.smartcardio.CardChannel)"
    - Src: "net.jsign.jca.OpenPGPCard:67,1"
      Dst: "[net.jsign.jca.OpenPGPCard].select()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].select()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:74,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:74,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:75,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:78,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:80,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].verify(int,int,java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes()"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:91"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:93"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:94"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:95,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.jca.OpenPGPCard].selectData(int,int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:106,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:106,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:107,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:114"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:118"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:115,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:118,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:121,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.jca.OpenPGPCard].getAID()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:132,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:114"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:118"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:115,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:118,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:121,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.jca.OpenPGPCard].getVersion()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getAID()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:139,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getAID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getAID()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:132,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getAvailableKeys()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashSet].<init>()"
    - "[net.jsign.jca.OpenPGPCard$Key].values()"
    - "[net.jsign.jca.OpenPGPCard].getKeyInfo(net.jsign.jca.OpenPGPCard$Key)"
    - "[net.jsign.jca.OpenPGPCard$KeyInfo].isPresent()"
    - "[net.jsign.jca.OpenPGPCard].supportsManageSecurityEnvironment()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:151"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:156"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:152"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:152"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:152"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:149,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:151,1"
      Dst: "[net.jsign.jca.OpenPGPCard$Key].values()"
    - Src: "net.jsign.jca.OpenPGPCard:152,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getKeyInfo(net.jsign.jca.OpenPGPCard$Key)"
    - Src: "net.jsign.jca.OpenPGPCard:152,1"
      Dst: "[net.jsign.jca.OpenPGPCard$KeyInfo].isPresent()"
    - Src: "net.jsign.jca.OpenPGPCard:152,1"
      Dst: "[net.jsign.jca.OpenPGPCard].supportsManageSecurityEnvironment()"
    - Src: "net.jsign.jca.OpenPGPCard:153,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.jca.OpenPGPCard$Key].values()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.jca.OpenPGPCard$Key[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard$Key:43,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getKeyInfo(net.jsign.jca.OpenPGPCard$Key)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.jca.OpenPGPCard$KeyInfo"
    argCount: 1
    argTypes:
    - "net.jsign.jca.OpenPGPCard$Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:186"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:189"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:187,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    - Src: "net.jsign.jca.OpenPGPCard:189,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.jca.OpenPGPCard$KeyInfo[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard$KeyInfo].<init>()"
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - "[net.jsign.jca.TLV].find(java.lang.String[])"
    - "[net.jsign.jca.TLV].value()"
    - "[net.jsign.jca.OpenPGPCard$Key].values()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].get()"
    - "[net.jsign.jca.OpenPGPCard$KeyInfo].isRSA()"
    - "[java.nio.ByteBuffer].getShort()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:202"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:204"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:212"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:216"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:194,1"
      Dst: "[net.jsign.jca.OpenPGPCard$KeyInfo].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - Src: "net.jsign.jca.OpenPGPCard:201,1"
      Dst: "[net.jsign.jca.TLV].find(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:203,1"
      Dst: "[net.jsign.jca.TLV].value()"
    - Src: "net.jsign.jca.OpenPGPCard:204,1"
      Dst: "[net.jsign.jca.OpenPGPCard$Key].values()"
    - Src: "net.jsign.jca.OpenPGPCard:206,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "net.jsign.jca.OpenPGPCard:206,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:215,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.jca.OpenPGPCard:216,1"
      Dst: "[net.jsign.jca.OpenPGPCard$KeyInfo].isRSA()"
    - Src: "net.jsign.jca.OpenPGPCard:217,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.jca.OpenPGPCard$KeyInfo].<init>()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$KeyInfo"
    linkageType: null
    functionLinenumber: -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.jsign.jca.OpenPGPCard$KeyInfo:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:114"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:118"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:115,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:118,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:121,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.jca.TLV"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.TLV:92,1"
      Dst: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer,boolean)"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.jca.TLV"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.TLV].parseList(java.nio.ByteBuffer,boolean)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[net.jsign.jca.TLV].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.TLV:100"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.TLV:99,1"
      Dst: "[net.jsign.jca.TLV].parseList(java.nio.ByteBuffer,boolean)"
    - Src: "net.jsign.jca.TLV:100,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.jca.TLV:101,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.jca.TLV:104,1"
      Dst: "[net.jsign.jca.TLV].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.TLV].parseList(java.nio.ByteBuffer,boolean)"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.nio.Buffer].hasRemaining()"
    - "[java.nio.ByteBuffer].get()"
    - "[net.jsign.jca.TLV].parseLength(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].get(byte[])"
    - "[java.nio.ByteBuffer].mark()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].reset()"
    - "[net.jsign.jca.TLV].<init>()"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.String].toUpperCase()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[net.jsign.jca.TLV].parseList(java.nio.ByteBuffer,boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.TLV:116"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:160"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:119"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:120"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:132"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:136"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:135"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:138"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:138"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:139"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:154"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:158"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:154"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:158"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.TLV:114,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.jca.TLV:116,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "net.jsign.jca.TLV:118,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.jca.TLV:128,1"
      Dst: "[net.jsign.jca.TLV].parseLength(java.nio.ByteBuffer)"
    - Src: "net.jsign.jca.TLV:134,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "net.jsign.jca.TLV:136,1"
      Dst: "[java.nio.ByteBuffer].mark()"
    - Src: "net.jsign.jca.TLV:145,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.jca.TLV:146,1"
      Dst: "[java.nio.ByteBuffer].reset()"
    - Src: "net.jsign.jca.TLV:151,1"
      Dst: "[net.jsign.jca.TLV].<init>()"
    - Src: "net.jsign.jca.TLV:152,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.jca.TLV:152,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.TLV:155,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.jca.TLV:155,1"
      Dst: "[net.jsign.jca.TLV].parseList(java.nio.ByteBuffer,boolean)"
    - Src: "net.jsign.jca.TLV:158,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.jca.TLV].parseLength(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].get()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.TLV:169"
      Branch Sides: []
    - Branch String: "net.jsign.jca.TLV:172"
      Branch Sides: []
    - Branch String: "net.jsign.jca.TLV:176"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.TLV:168,1"
      Dst: "[java.nio.ByteBuffer].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.jca.TLV].<init>()"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -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.jsign.jca.TLV:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.TLV].find(java.lang.String[])"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.jca.TLV"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Arrays].copyOfRange(java.lang.Object[],int,int)"
    - "[net.jsign.jca.TLV].find(java.lang.String[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.TLV:64"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:66"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:65"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:66"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:69"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.TLV:70"
      Branch Sides:
      - BranchSide: "net.jsign.jca.TLV:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.TLV:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.TLV:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.jca.TLV:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.jca.TLV:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.jca.TLV:70,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.jca.TLV:71,1"
      Dst: "[java.util.Arrays].copyOfRange(java.lang.Object[],int,int)"
    - Src: "net.jsign.jca.TLV:71,1"
      Dst: "[net.jsign.jca.TLV].find(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.jca.TLV].value()"
    functionSourceFile: "net.jsign.jca.TLV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard$KeyInfo].isRSA()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$KeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard$KeyInfo:53"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard$KeyInfo:52"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard$KeyInfo:53"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard$KeyInfo:52"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard$KeyInfo:53"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard$KeyInfo:52"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.jca.OpenPGPCard$KeyInfo].isPresent()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$KeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard$KeyInfo:61"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard$KeyInfo:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard$KeyInfo:61,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.jca.OpenPGPCard].supportsManageSecurityEnvironment()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getVersion()"
    - "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:242"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:242"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:242,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getVersion()"
    - Src: "net.jsign.jca.OpenPGPCard:242,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.jca.OpenPGPCard].getVersion()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getAID()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:139,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getAID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    - "[net.jsign.jca.TLV].find(java.lang.String[])"
    - "[net.jsign.jca.TLV].value()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:230"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:235"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - Src: "net.jsign.jca.OpenPGPCard:232,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:233,1"
      Dst: "[net.jsign.jca.TLV].find(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:233,1"
      Dst: "[net.jsign.jca.TLV].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].getCertificate(net.jsign.jca.OpenPGPCard$Key)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.jca.OpenPGPCard$Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    - "[net.jsign.jca.OpenPGPCard].getVersion()"
    - "[net.jsign.jca.OpenPGPCard].selectData(int,int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:164"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:168"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:167"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:168"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:173"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:175"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:174"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:175"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:178"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:165,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    - Src: "net.jsign.jca.OpenPGPCard:168,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getVersion()"
    - Src: "net.jsign.jca.OpenPGPCard:178,1"
      Dst: "[net.jsign.jca.OpenPGPCard].selectData(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.jca.OpenPGPCard].getData(int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:114"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:118"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:122"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.jca.OpenPGPCard:114,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:115,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:117,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:118,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:119,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:121,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    - Src: "net.jsign.jca.OpenPGPCard:123,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.jca.OpenPGPCard].getVersion()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getAID()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:139,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getAID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].selectData(int,int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:106,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:106,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:107,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getKeyInfo(net.jsign.jca.OpenPGPCard$Key)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.jca.OpenPGPCard$KeyInfo"
    argCount: 1
    argTypes:
    - "net.jsign.jca.OpenPGPCard$Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:186"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:189"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:187,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    - Src: "net.jsign.jca.OpenPGPCard:189,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].getKeyInfo()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.jca.OpenPGPCard$KeyInfo[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard$KeyInfo].<init>()"
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - "[net.jsign.jca.TLV].find(java.lang.String[])"
    - "[net.jsign.jca.TLV].value()"
    - "[net.jsign.jca.OpenPGPCard$Key].values()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].get()"
    - "[net.jsign.jca.OpenPGPCard$KeyInfo].isRSA()"
    - "[java.nio.ByteBuffer].getShort()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:202"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:204"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:212"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:216"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:194,1"
      Dst: "[net.jsign.jca.OpenPGPCard$KeyInfo].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:198,1"
      Dst: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - Src: "net.jsign.jca.OpenPGPCard:201,1"
      Dst: "[net.jsign.jca.TLV].find(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:203,1"
      Dst: "[net.jsign.jca.TLV].value()"
    - Src: "net.jsign.jca.OpenPGPCard:204,1"
      Dst: "[net.jsign.jca.OpenPGPCard$Key].values()"
    - Src: "net.jsign.jca.OpenPGPCard:206,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "net.jsign.jca.OpenPGPCard:206,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.jca.OpenPGPCard:213,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.OpenPGPCard:215,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.jca.OpenPGPCard:216,1"
      Dst: "[net.jsign.jca.OpenPGPCard$KeyInfo].isRSA()"
    - Src: "net.jsign.jca.OpenPGPCard:217,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getData(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    - "[net.jsign.jca.TLV].find(java.lang.String[])"
    - "[net.jsign.jca.TLV].value()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:230"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:235"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getData(int)"
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:231,1"
      Dst: "[net.jsign.jca.TLV].parse(java.nio.ByteBuffer)"
    - Src: "net.jsign.jca.OpenPGPCard:232,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    - Src: "net.jsign.jca.OpenPGPCard:233,1"
      Dst: "[net.jsign.jca.TLV].find(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:233,1"
      Dst: "[net.jsign.jca.TLV].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].supportsManageSecurityEnvironment()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getVersion()"
    - "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:242"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:242"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:242,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getVersion()"
    - Src: "net.jsign.jca.OpenPGPCard:242,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getExtendedCapabilities()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.jca.OpenPGPCard].putData(int,byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[java.util.Map].clear()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:249,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:249,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:250,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:253,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].sign(net.jsign.jca.OpenPGPCard$Key,byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.jca.OpenPGPCard$Key"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].verify(int,int,java.lang.String)"
    - "[net.jsign.jca.OpenPGPCard].computeDigitalSignature(byte[])"
    - "[net.jsign.jca.OpenPGPCard].manageSecurityEnvironment(int,byte)"
    - "[net.jsign.jca.OpenPGPCard].authenticate(byte[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:263"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:267"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:266"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:268"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:271"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:264,1"
      Dst: "[net.jsign.jca.OpenPGPCard].verify(int,int,java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:265,1"
      Dst: "[net.jsign.jca.OpenPGPCard].computeDigitalSignature(byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:269,1"
      Dst: "[net.jsign.jca.OpenPGPCard].manageSecurityEnvironment(int,byte)"
    - Src: "net.jsign.jca.OpenPGPCard:271,1"
      Dst: "[net.jsign.jca.OpenPGPCard].authenticate(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.jca.OpenPGPCard].verify(int,int,java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes()"
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:91"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:93"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.OpenPGPCard:94"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:94,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:95,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.jca.OpenPGPCard].computeDigitalSignature(byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:280"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:279,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:279,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:280,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:281,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:283,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:284,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].manageSecurityEnvironment(int,byte)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:306,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:306,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:307,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].authenticate(byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:292"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:295"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:291,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:291,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:292,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:293,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:295,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:296,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].computeDigitalSignature(byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:280"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:279,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:279,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:280,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:281,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:283,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:284,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].authenticate(byte[])"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getData()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:292"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:295"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCard:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:291,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:291,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:292,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:293,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:295,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:296,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].manageSecurityEnvironment(int,byte)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:306,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:306,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:307,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getCard()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.jca.OpenPGPCard"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:314,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.jca.OpenPGPCard"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:326"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:323,1"
      Dst: "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - Src: "net.jsign.jca.OpenPGPCard:325,1"
      Dst: "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:326,1"
      Dst: "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - "[java.lang.ProcessBuilder].start()"
    - "[java.lang.Process].waitFor(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.ProcessBuilder].start()"
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.Process].waitFor(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.smartcardio.CardChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SmartCard].<init>(javax.smartcardio.CardChannel)"
    - "[net.jsign.jca.OpenPGPCard].select()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:66,1"
      Dst: "[net.jsign.jca.SmartCard].<init>(javax.smartcardio.CardChannel)"
    - Src: "net.jsign.jca.OpenPGPCard:67,1"
      Dst: "[net.jsign.jca.OpenPGPCard].select()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard].select()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - "[javax.smartcardio.ResponseAPDU].getSW()"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:74,1"
      Dst: "[javax.smartcardio.CommandAPDU].<init>(int,int,int,int,byte[])"
    - Src: "net.jsign.jca.OpenPGPCard:74,1"
      Dst: "[net.jsign.jca.SmartCard].transmit(javax.smartcardio.CommandAPDU)"
    - Src: "net.jsign.jca.OpenPGPCard:75,1"
      Dst: "[javax.smartcardio.ResponseAPDU].getSW()"
    - Src: "net.jsign.jca.OpenPGPCard:78,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:80,1"
      Dst: "[net.jsign.jca.SmartCard].handleError(javax.smartcardio.ResponseAPDU)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.jca.OpenPGPCard"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:326"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:323,1"
      Dst: "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - Src: "net.jsign.jca.OpenPGPCard:325,1"
      Dst: "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:326,1"
      Dst: "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - "[java.lang.ProcessBuilder].start()"
    - "[java.lang.Process].waitFor(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.ProcessBuilder].start()"
    - Src: "net.jsign.jca.OpenPGPCard:334,1"
      Dst: "[java.lang.Process].waitFor(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].setAllowNanAndInfinity(boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getObjectsReferenced()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getObjectsVisited()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:264"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:268,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:279"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:284"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:283,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:294,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:314,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:315,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:316,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:317,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.lang.String].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:322,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].formatJson(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].formatJson(java.lang.String,java.util.Map,java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:333,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].formatJson(java.lang.String,java.util.Map,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].formatJson(java.lang.String,java.util.Map,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    - "[java.util.Map].clear()"
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:349"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:353"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:345,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:348,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:350,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:350,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:351,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:352,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:358,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:453,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:314,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:315,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:316,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:317,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:318,1"
      Dst: "[java.lang.String].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:322,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].formatJson(java.lang.String,java.util.Map,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    - "[java.util.Map].clear()"
    - "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:349"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:353"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:345,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:348,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:350,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:350,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:351,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToJava(java.lang.String,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:352,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:358,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].objectToJson(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:367,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].<init>(java.io.OutputStream,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.List].iterator()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 242
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:382"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:398"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:403"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:404"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:412"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:411"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:406"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:406"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:405"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:415"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:421"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:436"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:440"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:433"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:425"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:424"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:425"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:423"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:422"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:450"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:477"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:476"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:465"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:462"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:454"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:453"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:454"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:452"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:451"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:380,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:96,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:97,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:98,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:104,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:386,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:387,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:388,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:389,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:391,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:391,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:398,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:400,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:408,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:406,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:415,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:417,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:429,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:429,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:431,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:433,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:438,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:440,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:482,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:482,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:486,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 41
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:495,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].isTrue(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Number].intValue()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:504"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:507"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:511"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:512"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:514"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:513"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:506,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:510,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:514,1"
      Dst: "[java.lang.Number].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:526,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:535,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:544,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].tab(java.io.Writer,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:555"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:561"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:559,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:577"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:580"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:582"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:589"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:588"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:581,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:582,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:589,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:593,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:609"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:608"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:614"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:608,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:615,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:619,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCustom(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].hasPrimitiveForm()"
    - "[net.jsign.json-io.util.io.Writers$DateWriter].writePrimitiveForm(java.lang.Object,java.io.Writer,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriterEx].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].write(java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:636"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:639"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:643"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:644"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:648"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:651"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:654"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:655"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:658"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:663"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:673"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:676"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:687"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:688"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:689"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:688"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:693"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:699"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:637,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:644,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:649,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:654,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].hasPrimitiveForm()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:660,1"
      Dst: "[net.jsign.json-io.util.io.Writers$DateWriter].writePrimitiveForm(java.lang.Object,java.io.Writer,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:664,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:671,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:672,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:675,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:675,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:679,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:685,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:696,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriterEx].write(java.lang.Object,boolean,java.io.Writer,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:700,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter$JsonClassWriter].write(java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:702,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 17
    BBCount: 35
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:724"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:728"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:729"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:728"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:723,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:726,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:727,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].forceGetCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:748"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:753"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:741"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:745"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:742"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:741"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:747,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:750,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:752,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:745,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].addWriter(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:775,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].addWriterPermanent(java.lang.Class,net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonWriter$JsonClassWriterBase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:786,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].addNotCustomWriter(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:796,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].write(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    - "[java.util.Map].clear()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.json-io.util.io.JsonWriter].flush()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:805,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:806,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:809,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:813,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:815,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].traceReferences(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Deque].removeFirst()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].isArray()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:829"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:843"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:846"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:859"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:858"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:848"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:833"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:881"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:880"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:867"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:833"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:874"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:869"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:868"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:871"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:873"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:872"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:881"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:906"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:905"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:889"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:893"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:892"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:885"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:884"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:886"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:885"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:884"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:906"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:910"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:907"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:908"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:908"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:907"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:832"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:839"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:841"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:840"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:833,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:834,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:835,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:841,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:843,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:843,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:850,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:851,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:865,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:867,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:869,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:873,1"
      Dst: "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:881,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:889,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:893,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:886,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:908,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:920,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:839,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 17
    BBCount: 35
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].traceFields(java.util.Deque,java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Deque"
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].values()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.util.Collection].contains(java.lang.Object)"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:951"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:964"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:948"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:946"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:945"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:940,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:940,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:944,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:944,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:946,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:951,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:953,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:963,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:965,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:966,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:968,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:948,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 15
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:987"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:991"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:994"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:977"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:983"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:978,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:978,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:984,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:985,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:989,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:992,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDistance(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:982,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1006"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1010"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1015"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1017"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1030"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1020"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1023"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1024"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1024"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1023"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1011,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1011,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1017,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1019,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1024,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1026,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1031,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1048,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1068"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1071"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1072"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1077"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1078"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1082"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1078"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1082"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1083"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1087"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1083"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1087"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1088"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1091"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1092"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1095"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1096"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1099"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1100"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1122"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1103"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1107"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1123"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1125"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1074,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1078,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIfMatching(java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1083,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeOptionalReference(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1088,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1088,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1090,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1094,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1098,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1103,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1105,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1107,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1109,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1111,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1113,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1115,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1120,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1125,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1127,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1132,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 30
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1139"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1137"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1138,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1144"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1148"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1153"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1159"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1161"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1164"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1172"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1173"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1176"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1177"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1181"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1185"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1188"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1189"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1192"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1193"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1196"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1197"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1148,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1149,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1150,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1151,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeNameIfExists(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1156,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1161,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Float].floatValue()"
    - "[java.lang.Float].isNaN(float)"
    - "[java.lang.Float].isInfinite(float)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1215"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1219"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1224"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1225"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1225"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1229"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1242"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1245"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1251"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1221,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1221,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1229,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1230,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1232,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1237,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1242,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].isNaN(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1246,1"
      Dst: "[java.lang.Float].isInfinite(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 24
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeArray(java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    - "[java.lang.String].<init>(char[])"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    - "[java.lang.Class].getComponentType()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 149
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1259"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1262"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1267"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1267"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1271"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1275"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1276"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1283"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1289"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1294"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1307"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1307"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1323"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1324"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1328"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1331"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1332"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1335"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1336"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1339"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1340"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1343"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1344"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1347"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1361"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1364"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1365"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1381"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1366"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1370"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1370"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1377"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1377"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1381"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1357"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1358"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1391"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1395"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1263,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1264,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1265,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1272,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1273,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1278,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1278,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1280,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1285,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1294,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1295,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1322,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1326,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1326,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1330,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1334,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1338,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1342,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1346,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1350,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1354,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1355,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1359,1"
      Dst: "[java.lang.reflect.Array].get(java.lang.Object,int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1365,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1368,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1378,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 38
    BBCount: 76
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeBooleanArray(boolean[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Boolean].toString(boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1403"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1401"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1402"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1403,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1405,1"
      Dst: "[java.lang.Boolean].toString(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeDoubleArray(double[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1411"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1413,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1413,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1414,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeFloatArray(float[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "float[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1422"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1424,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1424,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1425,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].doubleToString(double)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Double].toString(double)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1432"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1435"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1434"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1432,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1433,1"
      Dst: "[java.lang.Double].toString(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1435,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1435,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].floatToString(float)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - "[java.lang.Float].toString(float)"
    - "[java.lang.Float].isNaN(float)"
    - "[java.lang.Float].isInfinite(float)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1440"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1443"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1443"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1443"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1442"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1440,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1441,1"
      Dst: "[java.lang.Float].toString(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1443,1"
      Dst: "[java.lang.Float].isNaN(float)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1443,1"
      Dst: "[java.lang.Float].isInfinite(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeLongArray(long[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[java.lang.Long].toString(long)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1449"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1463"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1451"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1464"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1453,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1454,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1454,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIntArray(int[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1476"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1478,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1478,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1479,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeShortArray(short[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "short[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1487"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1489,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1489,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1490,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeByteArray(byte[],int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(char[])"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1499"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1501,1"
      Dst: "[java.io.Writer].write(char[])"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1502,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCollection(java.util.Collection,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1509"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1517"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1518"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1517"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1521"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1522"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1526"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1529"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1542"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1531"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1531"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1537"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1550"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1551"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1550"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1554"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1514,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1515,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1519,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1520,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1527,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1533,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1543,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1544,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1546,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1553,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].next()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1563"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1559"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1560"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1561,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1561,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1563,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1565,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1566,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1573"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1577"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1581"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1582"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1590"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1584"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1588"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1579,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1579,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1586,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1587,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1589,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1595"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1596"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1595"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1599"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1597"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1596"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1597,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1598,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1599,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1605,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectArray(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.lang.Class].getComponentType()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.Long].toString(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 154
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1610"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1613"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1618"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1619"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1618"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1623"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1628"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1626"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1628"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1628"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1627"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1631"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1631"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1634"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1633"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1638"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1639"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1645"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1646"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1648"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1647"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1654"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1668"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1656"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1663"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1658"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1658"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1657"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1669"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1669"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1674"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1671"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1671"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1670"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1686"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1689"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1690"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1691"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1690"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1693"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1694"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1697"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1696"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1696"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1695"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1698"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1698"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1702"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1705"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1713"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1710"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1709"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1711"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1711"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1710"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1714"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1682"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1683"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1723"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1724"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1723"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1727"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1614,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1618,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1618,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1624,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1624,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1629,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1630,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1630,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1635,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1636,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1641,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1641,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1643,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1648,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1649,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1659,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1679,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1692,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1696,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1696,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1698,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1706,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeArrayElementIfMatching(java.lang.Class,java.lang.Object,boolean,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1711,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 38
    BBCount: 78
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectCollection(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1732"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1735"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1743"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1743"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1742"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1747"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1748"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1752"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1753"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1755"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1760"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1760"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1765"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1771"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1782"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1771"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1778"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1779"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1791"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1792"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1791"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1795"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1737,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1737,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1738,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1738,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1740,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1744,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1745,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1750,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1750,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1758,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1760,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1761,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1761,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1767,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1772,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].beginCollection(boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1774,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1780,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 30
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMap(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonObject].getId()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.util.LinkedHashMap].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1800"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1803"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1804"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1804"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1809"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1813"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1814"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1834"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1816"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1820"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1822"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1830"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1825"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1824"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1823"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1835"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1841"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1842"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1848"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1848"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1857"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1848"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1847"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1804,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1804,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1807,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1808,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1811,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1819,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1821,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1824,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1824,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1825,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1826,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1826,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1835,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1837,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1850,1"
      Dst: "[java.util.LinkedHashMap].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1850,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1852,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1859,1"
      Dst: "[java.util.LinkedHashMap].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1859,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 28
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectMapWithStringKeys(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonObject].getId()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1872"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1876"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1877"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1878"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1877"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1881"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1882"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1882"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1887"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1891"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1892"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1912"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1894"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1900"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1908"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1902"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1901"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1913"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1920"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1925"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1877,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1882,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1882,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1884,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1885,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1889,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1897,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1899,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1902,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1902,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1903,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1904,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1904,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1913,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1915,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1926,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonObjectObject(net.jsign.json-io.util.io.JsonObject,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.lang.String].valueOf(long)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.util.HashMap].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1934"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1939"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1939"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1939"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1939"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1945"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1949"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1950"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1962"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1952"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1957"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1957"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1963"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1969"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1971"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1975"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1986"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1982"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1986"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1987"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1991"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1999"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2002"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2003"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2006"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2003"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2006"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2007"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2008"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2007"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2010"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2009"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2009"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2008"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2012"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2011"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2014"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2015"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2018"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2019"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2024"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2025"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2024"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:1979"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:1980"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:1939,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1939,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1943,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1944,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1947,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1947,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1955,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1957,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1958,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getSubstituteTypeName(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1960,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getClassLoader()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1960,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1963,1"
      Dst: "[java.util.HashMap].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1965,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1976,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1976,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1981,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1982,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1993,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2003,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2003,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2005,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2009,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2009,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2013,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2017,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2021,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:1979,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 27
    BBCount: 55
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].doesValueTypeMatchFieldType(java.lang.Class,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Field].getType()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2034"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2039"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2038"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2035"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2038"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2035"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2036,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2037,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2038,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2038,1"
      Dst: "[java.lang.reflect.Field].getType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMap(java.util.Map,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2045"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2048"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2054"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2058"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2059"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2068"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2061"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2065"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2069"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2076"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2077"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2076"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2082"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2082"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2091"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2082"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2081"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2050,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2052,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2053,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2056,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2056,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2064,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2066,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2069,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2071,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2082,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2084,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2084,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2086,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeElements(java.io.Writer,java.util.Iterator)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2093,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2093,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 20
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMapWithStringKeys(java.util.Map,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - "[java.util.Map].isEmpty()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2106"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2110"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2111"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2110"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2114"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2121"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2129"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2110,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2115,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2117,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2118,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2119,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeIdAndTypeIfNeeded(java.lang.Object,boolean,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2121,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2123,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2131,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2134,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeMapBody(java.util.Iterator)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2140"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2141"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2142,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2143,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2143,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2144,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2146,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2146,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2150,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2151,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2155,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].ensureJsonPrimitiveKeys(java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2172"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2170"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2169"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2170,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeCollectionElement(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2187"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2190"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2191"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2192"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2191"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2194"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2199"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2202"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2203"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2203"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2209"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2189,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2193,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2201,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2203,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2203,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2210,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeEnumSet(java.util.EnumSet)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractCollection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.EnumSet].complementOf(java.util.EnumSet)"
    - "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].size()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Enum].name()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.lang.reflect.Field].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 93
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2220"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2238"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2243"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2246"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2250"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2307"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2270"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2274"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2277"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2284"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2280"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2284"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2295"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2276"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2275"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2216,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2217,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2219,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2222,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2222,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2224,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2227,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2231,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2233,1"
      Dst: "[java.util.AbstractCollection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2233,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2237,1"
      Dst: "[java.util.EnumSet].complementOf(java.util.EnumSet)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2244,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2245,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2256,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2258,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2261,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2263,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2265,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2289,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2297,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2297,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2307,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 26
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeObject(java.lang.Object,boolean,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.reflect.Field].getName()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2330"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2335"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2340"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2335"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2340"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2341"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2347"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2348"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2356"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2360"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2361"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2360"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2358"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2374"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2375"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2374"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2374"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2369"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2368"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2380"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2384"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2325,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2328,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2329,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabIn()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2332,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2332,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeId(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2338,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2343,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeType(java.lang.Object,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2353,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2354,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2354,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getFieldsUsingSpecifier(java.lang.Class,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2360,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2362,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2362,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2358,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2368,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2369,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2369,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2371,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2372,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2382,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].tabOut()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 18
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2389,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeField(java.lang.Object,boolean,java.lang.String,java.lang.reflect.Field,boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.lang.String"
    - "java.lang.reflect.Field"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - "[java.lang.Enum].name()"
    - "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - "[java.io.Writer].write(int)"
    - "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2397"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2397"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2405"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2421"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2413"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2417"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2405"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2426"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2430"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2430"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2434"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2440"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2445"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2452"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2451"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2456"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2455"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2461"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2460"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2461"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2460"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2397,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2403,1"
      Dst: "[java.lang.reflect.Field].getDeclaringClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2405,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2407,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2407,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2409,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2418,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].getValueByReflect(java.lang.Object,java.lang.reflect.Field)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2422,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2405,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2437,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2438,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].newLine()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2441,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2447,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2451,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2452,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2455,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2457,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writePrimitive(java.lang.Object,boolean)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2461,1"
      Dst: "[net.jsign.json-io.util.io.JsonWriter].writeImpl(java.lang.Object,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 36
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].writeJsonUtf8String(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2484"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2509"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2508"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2480"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2481"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2477,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2478,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2482,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2489,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2504,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].flush()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2525"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2530"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2527,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].close()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: 2536
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[java.io.Writer].close()"
    - "[java.util.Map].clear()"
    functionUses: 3
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2537,1"
      Dst: "[java.io.Writer].close()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2540,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonWriter].getId(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(long)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.Long].toString(long)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2546"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2549"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonWriter:2555"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonWriter:2553"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonWriter:2551,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2554,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2555,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonWriter:2555,1"
      Dst: "[java.lang.Long].toString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "subPFrom(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addPTo(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addPTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addPTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 2
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
        - "mulByWordAddTo(int,int[],int[])"
        - "subPFrom(int[])"
        - "shiftUpBit(int,int[],int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 2
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
        - "mulByWordAddTo(int,int[],int[])"
        - "subPFrom(int[])"
        - "shiftUpBit(int,int[],int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 2
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
        - "mulByWordAddTo(int,int[],int[])"
        - "subPFrom(int[])"
        - "shiftUpBit(int,int[],int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulByWordAddTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getCertHash()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getIssuerSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.lang.Class].toString()"
    functionUses: 1
    ICount: 17
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:145"
        BranchSideFuncs:
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:144"
        BranchSideFuncs:
        - "callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
        - "iterator()"
        - "getLogger()"
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:146,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:146,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:147,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:148,1"
      Dst: "[java.lang.Class].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].tryAdvance(java.util.function.Consumer)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    - "[net.jsign.log4j.Logger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:154"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:161"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:165"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:168"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:156,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:157,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:157,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator:162,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].trySplit()"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Spliterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].estimateSize()"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].characteristics()"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer].<init>(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.OIDTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.OIDTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.OIDTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 33
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].createDefaultMultiplier()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECMultiplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat448].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat448].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].bootstrap$()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Supplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25:-1,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].get()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.charset.CharsetEncoders].lambda$toCharsetEncoder$0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25:-1,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders].lambda$toCharsetEncoder$0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].lambda$toCharsetEncoder$0()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newEncoder()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.nio.charset.Charset].newEncoder()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[java.nio.charset.Charset].newEncoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - "[java.lang.Object].<init>()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 1
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:88"
        BranchSideFuncs:
        - "bootstrap$()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:86,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 5
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:102"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:106"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:105"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:106"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:106"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:106,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:108,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].hashCode()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:120"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:120,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getParent()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:151"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:151,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:151,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - "[java.lang.Object].<init>()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 1
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:88"
        BranchSideFuncs:
        - "bootstrap$()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:86,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getName()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:162"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].toString()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].valueOf(char)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.CharSequence[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.CharSequence[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:174,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].lambda$new$1(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].lambda$new$0(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:83"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.jca.SigningServiceSignature].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.jca.SigningServiceSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AbstractSignatureSpi].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceSignature:29,1"
      Dst: "[net.jsign.jca.AbstractSignatureSpi].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceSignature].engineInitSign(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.jca.SigningServiceSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceSignature].engineUpdate(byte[],int,int)"
    functionSourceFile: "net.jsign.jca.SigningServiceSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceSignature:40,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceSignature].engineSign()"
    functionSourceFile: "net.jsign.jca.SigningServiceSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningServicePrivateKey].getService()"
    - "[net.jsign.jca.SigningService].sign(net.jsign.jca.SigningServicePrivateKey,java.lang.String,byte[])"
    - "[java.security.SignatureException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceSignature:46,1"
      Dst: "[net.jsign.jca.SigningServicePrivateKey].getService()"
    - Src: "net.jsign.jca.SigningServiceSignature:46,1"
      Dst: "[net.jsign.jca.SigningService].sign(net.jsign.jca.SigningServicePrivateKey,java.lang.String,byte[])"
    - Src: "net.jsign.jca.SigningServiceSignature:48,1"
      Dst: "[java.security.SignatureException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.jca.SigningServicePrivateKey].getService()"
    functionSourceFile: "net.jsign.jca.SigningServicePrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.jca.SigningService"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].equal(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 126
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX8(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].one(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].x(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].zero(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].createCurveMap()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getNames()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByNameLazy(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByNameLazy(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves].substitute(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util$CustomCurves:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "intValueExact()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "<init>(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "<init>(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 43
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersionValue(net.jsign.bouncycastle.asn1.ASN1Integer)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctetsLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctetsLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].hasPublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPublicKeyData()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].readObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    functionUses: 2
    ICount: 7
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "read()"
        - "implParseObject(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.BERSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 101
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.BERSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.BERSet"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERSetParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[java.io.InputStream].read()"
    - "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 9
    ICount: 24
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA512CKDF].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA512CKDF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X25519withSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    functionUses: 12
    ICount: 12
    EdgeCount: 129
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "toDLObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 28
    ICount: 19
    EdgeCount: 198
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "getLengthOfDL(int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "getLengthOfDL(int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERSet:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:META-INF.versions.9.org.bouncycastle.asn1.DLBitString:META-INF.versions.9.org.bouncycastle.asn1.DLExternal:META-INF.versions.9.org.bouncycastle.asn1.DLSequence:META-INF.versions.9.org.bouncycastle.asn1.DLSet:META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERSet:net.jsign.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.DLBitString:net.jsign.bouncycastle.asn1.DLExternal:net.jsign.bouncycastle.asn1.DLSequence:net.jsign.bouncycastle.asn1.DLSet:net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 33
    ICount: 21
    EdgeCount: 281
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "getDLSubStream()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "getDLSubStream()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "getDLSubStream()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "getDLSubStream()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 6
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDLSubStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.DLOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].rebuildConstructed(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].replaceTag(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLTaggedObject].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].subtract(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].subtract(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,boolean)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint].isIndirectCRL()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].parseStream(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getThisUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getThisUpdate()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getThisUpdate()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getThisUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getThisUpdate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getThisUpdate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getNextUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getNextUpdate()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getNextUpdate()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getNextUpdate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getNextUpdate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getNextUpdate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getRevokedCertificate(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getUserCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.math.BigInteger].intValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getRevokedCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificates()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getCertificateIssuer()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificates()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getCertificateIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getRevokedCertificateEnumeration()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getRevokedCertificateEnumeration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].<init>(net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry,boolean,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].hasExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLEntryHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLEntryHolder].getCertificateIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLEntryHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].hasExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].getNonCriticalExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].isSignatureValid(net.jsign.bouncycastle.operator.ContentVerifierProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getSignature()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignatureAlgorithm()"
    - "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].encodeTo(java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignature()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getSignature()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignatureAlgorithm()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].encodeTo(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignature()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].isAlgIdEqual(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].isAlternativeSignatureValid(net.jsign.bouncycastle.operator.ContentVerifierProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.cert.CertUtils].trimExtensions(int,net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeTo(java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getSignature()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertUtils].trimExtensions(int,net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeTo(java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getSignature()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].<init>(net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    functionUses: 110
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 113
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 30
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertUtils].trimExtensions(int,net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.CertUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.CertUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cert.CertUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 110
    ICount: 19
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AltSignatureValue].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AltSignatureValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.X509CRLHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CRLHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.io.ObjectInputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getTBSCertList()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList].getExtensions()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].isIndirectCRL(net.jsign.bouncycastle.asn1.x509.Extensions)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].getEncoded()"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.util.Date)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 77
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "isDigit(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].isDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 28
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 77
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionUses: 33
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].getDERTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 77
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "toByteArray(java.lang.String)"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].toDERObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].addDigestAlgId(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 22
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 42
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.BufferedBlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BufferedBlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].<init>(net.jsign.bouncycastle.crypto.MultiBlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    - "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedMultiBlockCipher].<init>(net.jsign.bouncycastle.crypto.MultiBlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.paddings.BlockCipherPadding)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].wrapOnNoPadding()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUnderlyingCipher()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUnderlyingCipher()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUnderlyingCipher()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUnderlyingCipher()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getOutputSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUpdateOutputSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].getUpdateOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].updateAAD(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processByte(byte,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processByte(byte,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].doFinal(byte[],int)"
    - "[java.lang.Throwable].getMessage()"
    - "[javax.crypto.BadPaddingException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[javax.crypto.BadPaddingException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$BufferedGenericBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].toBigInteger64(long[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 13
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 157
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMulw(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 49
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 157
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 5
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 7
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "create64(int)"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].halfTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].halfTrace(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 90
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hasFastTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].trace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].trace(long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].invert(long[],long[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].invert(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat320].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 33
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 13
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 7
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "create64(int)"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].sqrt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    functionUses: 13
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getRepresentation()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].eq64(long[],long[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$EdDSA].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$EdDSA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$EdDSA:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierId].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierId:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].setNb(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].setNb(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].setNb(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 130
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Integer].toBinaryString(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.Integer].toBinaryString(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 215
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 40
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 130
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processPacket(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 215
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAAD(byte[],int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].CalculateMac(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].ProcessBlock(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 40
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].intToBytes(int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher].getFlag(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Integer].toBinaryString(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.Integer].toBinaryString(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KCCMBlockCipher:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 104
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 104
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 104
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Objects].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Objects].areEqual(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type:net.jsign.bouncycastle.asn1.ASN1Type:net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 130
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Objects].hashCode(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.poi.hpsf.ClassID].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.util.Fingerprint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].hashCode()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].hashCode()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.commons.io.ByteOrderMark].hashCode()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.field.PrimeField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].hashCode()"
    - "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.log4j.message.ObjectMessage].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[net.jsign.log4j.message.SimpleMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.log4j.message.StringFormattedMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].hashCode()"
    - "[net.jsign.log4j.Level].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.commons.cli.Option].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.log4j.message.ParameterizedMessage].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.log4j.spi.Provider].hashCode()"
    - "[net.jsign.bouncycastle.cms.SignerId].hashCode()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null:META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:net.jsign.bouncycastle.asn1.ASN1Null:net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:net.jsign.log4j.ThreadContext$EmptyThreadContextStack].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 6
    ICount: 6
    EdgeCount: 181
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineTranslateKey(java.security.Key)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Key"
    argCount: 1
    argTypes:
    - "java.security.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.spec.KeySpec"
    argCount: 2
    argTypes:
    - "java.security.Key"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.security.Key].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].getCause()"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.interfaces.XDHPublicKey].getUEncoding()"
    - "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.interfaces.EdDSAPublicKey].getPointEncoding()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.interfaces.XDHPublicKey].getUEncoding()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.interfaces.EdDSAPublicKey].getPointEncoding()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[java.util.Random].nextInt()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].remainder(java.math.BigInteger)"
    functionUses: 0
    ICount: 198
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].remainder(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 39
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.X509EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    - "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 117
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.X509EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(byte[],byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(byte[],byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].parse(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].validatePublicKeyPartialExport(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448].validatePublicKeyPartialExport(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCEdDSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].decrementPromotionCountdown()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPromotionCountdown()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPromotionCountdown(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getConfWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setConfWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setPreCompNeg(net.jsign.bouncycastle.math.ec.ECPoint[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getTwice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setTwice(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[])"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].encode(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.AESCCMModePacketCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeCCMPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMModePacketCipher].getMacSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMModePacketCipher].getMacSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Math].addExact(int,int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.Math].addExact(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMModePacketCipher].getCCMMacSize(boolean,int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].calculateMac(byte[],int,int,byte[],int,byte[],byte[],int[][],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].ctrProcessBlock(byte[],byte[],byte[],int,byte[],int,int[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMModePacketCipher].getCCMMacSize(boolean,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].calculateMac(byte[],int,int,byte[],int,byte[],byte[],int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].ctrProcessBlock(byte[],byte[],byte[],int,byte[],int,int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 33
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.PacketCipherException$Reason"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAgainstRequiredLength(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkOutputAgainstRequiredLength(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAgainstRequiredLength(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkOutputAgainstRequiredLength(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAgainstRequiredLength(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkOutputAgainstRequiredLength(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[][]"
    argCount: 2
    argTypes:
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    functionUses: 0
    ICount: 225
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX2(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX2(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].FFmulX2(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Math].addExact(int,int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.Math].addExact(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].calculateMac(byte[],int,int,byte[],int,byte[],byte[],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 9
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "byte[]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    functionUses: 0
    ICount: 460
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    functionUses: 0
    ICount: 458
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 8
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xor(int,byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xor(int,byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xor(int,byte[],int,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].ctrProcessBlock(byte[],byte[],byte[],int,byte[],int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 8
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTee(int,byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTee(int,byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTee(int,byte[],int,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].calculateMac(byte[],int,int,byte[],int,byte[],byte[],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 9
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "byte[]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].cbcmacUpdate(byte[],byte[],int,byte[],int,int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 8
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xor(int,byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xor(int,byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].ctrProcessBlock(byte[],byte[],byte[],int,byte[],int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 8
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Bytes].xorTee(int,byte[],int,byte[],int,byte[],int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTee(int,byte[],int,byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCCMPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$Disposer].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$CBCRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$Disposer].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC$Disposer].<init>(net.jsign.bouncycastle.crypto.engines.AESNativeCBC,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromUTF8ByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs:
        - "transcodeToUTF16(byte[],char[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.UTF8:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromUTF8ByteArray(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Strings].constantTimeAreEqual(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Strings].split(java.lang.String,char)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.Strings].newList()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.util.StringList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings$StringListImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Strings$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings$StringListImpl:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings$StringListImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings$StringListImpl:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].bootstrap$(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].<init>(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37:-1,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$add__37].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$add__37:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:32,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:36,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:40,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.RecordFormatException].check(boolean,java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.RecordFormatException:52"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.RecordFormatException:55"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.RecordFormatException:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:53,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:32,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESCFBModePacketCipher].checkCFBParameter(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].getOutputSize(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCFBModePacketCipher].checkCFBParameter(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].getOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[java.lang.Object].clone()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFBPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.StreamUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream:net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - "[java.io.ByteArrayInputStream].available()"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].size()"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].maxMemory()"
    functionUses: 1
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    - Branch String: "net.jsign.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs:
        - "getLimit()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.ByteArrayInputStream].available()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "net.jsign.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].maxMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.Counters$AbstractPathCounters:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:57"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:56"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.Counters$AbstractPathCounters:57"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.Counters$AbstractPathCounters:61"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.Counters$AbstractPathCounters:62"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.Counters$AbstractPathCounters:63"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.Counters$AbstractPathCounters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:61,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].getByteCounter()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$Counter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].getDirectoryCounter()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$Counter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].getFileCounter()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$Counter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].hashCode()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].hash(java.lang.Object[])"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:88,1"
      Dst: "[java.util.Objects].hash(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].reset()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$Counter].reset()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:93,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].toString()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].get()"
    - "[net.jsign.commons.io.file.Counters$LongCounter:net.jsign.commons.io.file.Counters$NoopCounter].get()"
    - "[net.jsign.commons.io.file.Counters$Counter].get()"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 5
    ICount: 16
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:100,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].get()"
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:100,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:100,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:37,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].toString()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 7
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:77,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:259"
        BranchSideFuncs:
        - "isMap()"
        - "isCollection()"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:253"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:256"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:254"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:264"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:263"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:251,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:255,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:256,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:258,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].hasId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:88"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:87"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getType()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:113,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:118"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:119"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:119"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:118,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:118,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.Number].byteValue()"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Number].floatValue()"
    - "[java.lang.Float].valueOf(float)"
    - "[java.lang.Number].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Number].shortValue()"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:124"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:128"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:133"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:142"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:143"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:148"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:153"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:156"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:159"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:165"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:174"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:124,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:126,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:131,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:131,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "net.jsign.json-io.util.io.JsonObject:136,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:136,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.json-io.util.io.JsonObject:141,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:141,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.json-io.util.io.JsonObject:146,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:151,1"
      Dst: "[java.lang.Number].shortValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:151,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "net.jsign.json-io.util.io.JsonObject:158,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:158,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:162,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:166,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:172,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:177,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:190,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:195,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:201"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:200"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 206
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:207"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:210"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:214"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:214"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:212"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:211,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:213,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:223"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:227"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:225,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.JsonObject:227,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:229,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonObject:229,1"
      Dst: "[java.lang.Class].isArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:242,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - Src: "net.jsign.json-io.util.io.JsonObject:245,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - "[net.jsign.json-io.util.io.JsonObject].isMap()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.reflect.Array].getLength(java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:259"
        BranchSideFuncs:
        - "isMap()"
        - "isCollection()"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:253"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:256"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:254"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:260"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:264"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:263"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:251,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:255,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:256,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:258,1"
      Dst: "[java.lang.reflect.Array].getLength(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isCollection()"
    - Src: "net.jsign.json-io.util.io.JsonObject:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getComponentType()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:270,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonObject:270,1"
      Dst: "[java.lang.Class].getComponentType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].moveBytesToMate()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.lang.Number].byteValue()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:279"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:276,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:281,1"
      Dst: "[java.lang.Number].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].moveCharsToMate()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.lang.String].toCharArray()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:288"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:291"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:295"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:296"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:287,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:299,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:303,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:303,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:303,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:303,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:303,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 651
    ICount: 33
    EdgeCount: 264
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:314"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:319"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:311,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:314,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:322,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:323,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonObject].clear()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].clear()"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:335,1"
      Dst: "[java.util.LinkedHashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].clearArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].remove(java.lang.Object)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:341,1"
      Dst: "[java.util.HashMap].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLine()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getCol()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].size()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.HashMap].size()"
    functionUses: 2
    ICount: 27
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:362"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:377"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:365"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:368"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:369"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:374"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:362,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:364,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:375,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:375,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:375,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:375,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:375,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:383,1"
      Dst: "[java.util.HashMap].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicePurpose:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionUses: 6
    ICount: 29
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].findExceptionConstructor(java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Constructor"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].<init>(net.jsign.bouncycastle.crypto.modes.AEADCipher)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AEADCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getAlgorithmName()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getAlgorithmName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].wrapOnNoPadding()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADBlockCipher].getUnderlyingCipher()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getOutputSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getUpdateOutputSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].getUpdateOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].updateAAD(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processByte(byte,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processByte(byte,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AEADCipher].doFinal(byte[],int)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[javax.crypto.BadPaddingException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AEADCipher].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher:-1,1"
      Dst: "[javax.crypto.BadPaddingException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher].access$000(net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.modes.AEADCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$AEADGenericBlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].<init>(net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].isPredictionResistant()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    functionUses: 5
    ICount: 37
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].setDaemon(boolean)"
    - "[java.lang.Thread].start()"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].setDaemon(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].entropySize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].<init>(java.security.MessageDigest)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.MessageDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].update(byte[],int,int)"
    functionUses: 21
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:-1,1"
      Dst: "[java.security.MessageDigest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].update(byte[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:-1,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].update(byte)"
    functionUses: 18
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:-1,1"
      Dst: "[java.security.MessageDigest].update(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].keys()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Boolean"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].create(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean:net.jsign.bouncycastle.asn1.ASN1Sequence].isTrue()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 36
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "isTrue()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "isTrue()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionUses: 5
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "getExtnValue()"
        - "isCritical()"
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionUses: 9
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getExtnValue()"
        - "isCritical()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getExtnValue()"
        - "isCritical()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getExtnValue()"
        - "isCritical()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getExtnValue()"
        - "isCritical()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    functionUses: 110
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extension:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extension:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "getInstance(boolean)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extension"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3].<init>(net.jsign.bouncycastle.util.dispose.DisposalDaemon,net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    - "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$000()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].dispose()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-2"
        BranchSideFuncs:
        - "dispose()"
        - "access$000()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].dispose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.logging.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable].dispose()"
    functionSourceFile: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 4
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.dispose.DisposalDaemon$ReferenceWrapperWithDisposerRunnable:-1,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.PowerShellSignableProvider].<init>()"
    functionSourceFile: "net.jsign.spi.PowerShellSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.PowerShellSignableProvider:37,1"
      Dst: "[net.jsign.spi.ExtensionBasedSignableProvider].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.spi.PowerShellSignableProvider].create(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.spi.PowerShellSignableProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.Signable"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.PowerShellScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.spi.PowerShellSignableProvider:42,1"
      Dst: "[net.jsign.script.PowerShellScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:64,1"
      Dst: "[net.jsign.script.SignableScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed25519].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed25519:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].hasFailed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].reportFailed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].hasCurveEquationPassed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].reportCurveEquationPassed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].hasOrderPassed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo].reportOrderPassed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].<init>(byte[])"
    functionSourceFile: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:43,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:44,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:44,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 110
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:49,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:50,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest:52,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].<init>(java.security.SecureRandom,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].<init>(net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].sleep(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].sleep(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].access$000(net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].access$100(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].sleep(long)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].sleep(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].sleep(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider:-1,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider].access$200(net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createDefaultMultiplier()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECMultiplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].<init>(net.jsign.bouncycastle.math.ec.ECCurve,int,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "int"
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    - "net.jsign.bouncycastle.math.ec.ECMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setMultiplier(net.jsign.bouncycastle.math.ec.ECMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Config"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].supportsCoordinateSystem(int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Config:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].cloneCurve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createDefaultMultiplier()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECMultiplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointExtended].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512CKDF].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512CKDF"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.kdf.ConcatenationKDFGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi$X448UwithSHA512CKDF:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:65,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 98
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].bootstrap$()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39:-1,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].<init>()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].<init>()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39].apply(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertySource].getPropertyNames()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$getPropertyNames__39:-1,1"
      Dst: "[net.jsign.log4j.util.PropertySource].getPropertyNames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreState(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize(long)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte[],int,int)"
    functionUses: 14
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    functionUses: 6
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getByteLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getByteLength(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getByteLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getByteLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getByteLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier].multiplyPositive(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism].decomposeScalar(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].hasEfficientPointMap()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVEndomorphism].decomposeScalar(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].hasEfficientPointMap()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.GLVMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].abs()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precomputeWithPointMap(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECPointMap,net.jsign.bouncycastle.math.ec.WNafPreCompInfo,boolean)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].abs()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil].mapPoint(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precomputeWithPointMap(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.math.ec.ECPointMap,net.jsign.bouncycastle.math.ec.WNafPreCompInfo,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].abs()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickFixedPoint(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].abs()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].isPromoted()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickFixedPoint(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].generateWindowNaf(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].implShamirsTrickWNaf(net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[],net.jsign.bouncycastle.math.ec.ECPoint[],net.jsign.bouncycastle.math.ec.ECPoint[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 26
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areAllZeroes(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(boolean[],boolean[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(boolean[],boolean[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(boolean[],boolean[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(char[],char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char[]"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(char[],char[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(char[],char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(int[],int[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(long[],long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(java.lang.Object[],java.lang.Object[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].areEqual(short[],short[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(short[],short[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].constantTimeAreEqual(int,byte[],int,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].constantTimeAreEqual(char[],char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char[]"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].compareUnsigned(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(boolean[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(byte[],byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(char[],char)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char[]"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(int[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(long[],long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].contains(short[],short)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "short[]"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(boolean[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(boolean[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(boolean[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(boolean[],int,int,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(boolean[],int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(boolean[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(char[],char)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],char)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(char[],int,int,char)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "char[]"
    - "int"
    - "int"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],int,int,char)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(char[],int,int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(int[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(int[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(long[],long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(long[],long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(long[],int,int,long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(long[],int,int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object[]"
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(short[],short)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "short[]"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(short[],short)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(short[],short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].fill(short[],int,int,short)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "short[]"
    - "int"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(short[],int,int,short)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(short[],int,int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(int[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(short[][][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[][][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(short[][])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[][])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(short[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(short[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].hashCode(java.lang.Object[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Objects].hashCode(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Objects].hashCode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Objects].hashCode(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.util.Objects"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.poi.hpsf.ClassID].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.util.Fingerprint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].hashCode()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].hashCode()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.commons.io.ByteOrderMark].hashCode()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.field.PrimeField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].hashCode()"
    - "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.log4j.message.ObjectMessage].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[net.jsign.log4j.message.SimpleMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.log4j.message.StringFormattedMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].hashCode()"
    - "[net.jsign.log4j.Level].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.commons.cli.Option].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.log4j.message.ParameterizedMessage].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.log4j.spi.Provider].hashCode()"
    - "[net.jsign.bouncycastle.cms.SignerId].hashCode()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null:META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:net.jsign.bouncycastle.asn1.ASN1Null:net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle:net.jsign.log4j.ThreadContext$EmptyThreadContextStack].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 6
    ICount: 6
    EdgeCount: 181
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Objects:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Objects:-2"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Objects:-1,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(boolean[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 1
    argTypes:
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(short[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(java.math.BigInteger[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(byte[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[][]"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clone(byte[][][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[][][]"
    argCount: 1
    argTypes:
    - "byte[][][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[][])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[][])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[][]"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(boolean[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 2
    argTypes:
    - "boolean[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(char[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "char[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(int[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(short[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOf(java.math.BigInteger[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 2
    argTypes:
    - "java.math.BigInteger[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(boolean[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean[]"
    argCount: 3
    argTypes:
    - "boolean[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(char[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "char[]"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(short[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 3
    argTypes:
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].copyOfRange(java.math.BigInteger[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "java.math.BigInteger[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].getLength(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].append(byte[],byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].append(short[],short)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].append(int[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].append(java.lang.String[],java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(short[],short[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(short[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(byte[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].concatenate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].prepend(byte[],byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].prepend(short[],short)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 2
    argTypes:
    - "short[]"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].prepend(int[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverse(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverse(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverse(byte[],byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverseInPlace(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverseInPlace(short[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].reverseInPlace(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clear(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clear(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clear(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clear(int[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].clear(long[][])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(long[],long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].isNullOrContainsNull(java.lang.Object[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].isNullOrEmpty(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].isNullOrEmpty(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Arrays].isNullOrEmpty(java.lang.Object[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPValidationException:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPValidationException:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].getFailureCode()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcUuid"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcUuid:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:39,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcUuid"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 110
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcUuid:44,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.EncryptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.EncryptionException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.EncryptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.EncryptionException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.EncryptionException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.EncryptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[AuthenticodeExeSignerFuzzer].<init>()"
    functionSourceFile: "AuthenticodeExeSignerFuzzer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "AuthenticodeExeSignerFuzzer:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[AuthenticodeExeSignerFuzzer].fuzzerTestOneInput(byte[])"
    functionSourceFile: "AuthenticodeExeSignerFuzzer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - "[java.io.File].deleteOnExit()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].write(java.nio.file.Path,byte[],java.nio.file.OpenOption[])"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getContextClassLoader()"
    - "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - "[net.jsign.pe.PEFile].<init>(java.io.File)"
    - "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "AuthenticodeExeSignerFuzzer:29,1"
      Dst: "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - Src: "AuthenticodeExeSignerFuzzer:30,1"
      Dst: "[java.io.File].deleteOnExit()"
    - Src: "AuthenticodeExeSignerFuzzer:31,1"
      Dst: "[java.io.File].toPath()"
    - Src: "AuthenticodeExeSignerFuzzer:31,1"
      Dst: "[java.nio.file.Files].write(java.nio.file.Path,byte[],java.nio.file.OpenOption[])"
    - Src: "AuthenticodeExeSignerFuzzer:33,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "AuthenticodeExeSignerFuzzer:34,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "AuthenticodeExeSignerFuzzer:34,1"
      Dst: "[java.lang.Thread].getContextClassLoader()"
    - Src: "AuthenticodeExeSignerFuzzer:34,1"
      Dst: "[java.lang.ClassLoader].getResourceAsStream(java.lang.String)"
    - Src: "AuthenticodeExeSignerFuzzer:34,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "AuthenticodeExeSignerFuzzer:34,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "AuthenticodeExeSignerFuzzer:37,1"
      Dst: "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    - Src: "AuthenticodeExeSignerFuzzer:37,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - Src: "AuthenticodeExeSignerFuzzer:38,1"
      Dst: "[net.jsign.pe.PEFile].<init>(java.io.File)"
    - Src: "AuthenticodeExeSignerFuzzer:38,1"
      Dst: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.security.KeyStore"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getDefault()"
    - "[java.lang.Object].<init>()"
    - "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - "[java.security.KeyStore].getProvider()"
    - "[java.security.Provider].getName()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:143"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:147"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:150"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:151"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:150"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:150"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:141,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:102,1"
      Dst: "[net.jsign.DigestAlgorithm].getDefault()"
    - Src: "net.jsign.AuthenticodeSigner:142,1"
      Dst: "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:147,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.AuthenticodeSigner:147,1"
      Dst: "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - Src: "net.jsign.AuthenticodeSigner:149,1"
      Dst: "[java.security.KeyStore].getProvider()"
    - Src: "net.jsign.AuthenticodeSigner:150,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.AuthenticodeSigner:150,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.DigestAlgorithm].getDefault()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "net.jsign.DigestAlgorithm"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.pe.PEFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:107,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.pe.PEFile:107,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.pe.PEFile:107,1"
      Dst: "[net.jsign.pe.PEFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.pe.PEFile].read(long,int,int)"
    - "[java.nio.ByteBuffer].get()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].toHexString(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.channels.Channel].close()"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFile:122"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:128"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:128"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:133"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:136"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:136"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:136"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:136"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:136"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:136"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFile:136"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:143"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.pe.PEFile:69,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.pe.PEFile:71,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.pe.PEFile:122,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.pe.PEFile:123,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.pe.PEFile:127,1"
      Dst: "[net.jsign.pe.PEFile].read(long,int,int)"
    - Src: "net.jsign.pe.PEFile:128,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.pe.PEFile:134,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.pe.PEFile:137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.pe.PEFile:137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.pe.PEFile:137,1"
      Dst: "[java.lang.Long].toHexString(long)"
    - Src: "net.jsign.pe.PEFile:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.pe.PEFile:141,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.pe.PEFile].read(long,int,int)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].rewind()"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:164,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.pe.PEFile:165,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.pe.PEFile:166,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.pe.PEFile:167,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.pe.PEFile:168,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 352
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.appx.APPXFile].validate(java.security.cert.Certificate)"
    - "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - "[net.jsign.mscab.MSCabinetFile].getSignatures()"
    - "[net.jsign.script.JScript].getSignatures()"
    - "[net.jsign.script.PowerShellXMLScript].getSignatures()"
    - "[net.jsign.cat.CatalogFile].getSignatures()"
    - "[net.jsign.script.WindowsScript].getSignatures()"
    - "[net.jsign.msi.MSIFile].getSignatures()"
    - "[net.jsign.script.VBScript].getSignatures()"
    - "[net.jsign.appx.APPXFile].getSignatures()"
    - "[net.jsign.script.PowerShellScript].getSignatures()"
    - "[net.jsign.nuget.NugetFile].getSignatures()"
    - "[net.jsign.navx.NAVXFile].getSignatures()"
    - "[net.jsign.pe.PEFile].getSignatures()"
    - "[net.jsign.script.SignableScript].getSignatures()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.script.PowerShellScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.mscab.MSCabinetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.appx.APPXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.PowerShellXMLScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.JScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.cat.CatalogFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.VBScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.WindowsScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.navx.NAVXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.pe.PEFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.msi.MSIFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].save()"
    - "[net.jsign.script.VBScript].save()"
    - "[net.jsign.script.PowerShellXMLScript].save()"
    - "[net.jsign.appx.APPXFile].save()"
    - "[net.jsign.script.PowerShellScript].save()"
    - "[net.jsign.msi.MSIFile].save()"
    - "[net.jsign.script.SignableScript].save()"
    - "[net.jsign.script.WindowsScript].save()"
    - "[net.jsign.navx.NAVXFile].save()"
    - "[net.jsign.cat.CatalogFile].save()"
    - "[net.jsign.script.JScript].save()"
    - "[net.jsign.mscab.MSCabinetFile].save()"
    - "[net.jsign.pe.PEFile].save()"
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 1
    ICount: 28
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:357"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:364"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:372"
        BranchSideFuncs:
        - "getSignatures()"
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Branch String: "net.jsign.AuthenticodeSigner:366"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:353,1"
      Dst: "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:356,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.AuthenticodeSigner:357,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.AuthenticodeSigner:358,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:362,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:372,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:373,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.SignerException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.SignerException"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 384
    functionDepth: 14
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.cat.CatalogFile].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.Signable].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.nuget.NugetFile].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - "[net.jsign.timestamp.Timestamper].create(net.jsign.timestamp.TimestampingMode)"
    - "[net.jsign.timestamp.Timestamper].setURLs(java.lang.String[])"
    - "[net.jsign.timestamp.Timestamper].setRetries(int)"
    - "[net.jsign.timestamp.Timestamper].setRetryWait(int)"
    - "[net.jsign.timestamp.RFC3161Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.timestamp.Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    functionUses: 1
    ICount: 36
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:393"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:395"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:399"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "create(net.jsign.timestamp.TimestampingMode)"
        - "isAuthenticode(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:398"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:397"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:395"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "create(net.jsign.timestamp.TimestampingMode)"
        - "isAuthenticode(java.lang.String)"
    - Branch String: "net.jsign.AuthenticodeSigner:399"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:402"
        BranchSideFuncs:
        - "setURLs(java.lang.String[])"
      - BranchSide: "net.jsign.AuthenticodeSigner:401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:402"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:405"
        BranchSideFuncs:
        - "setRetries(int)"
      - BranchSide: "net.jsign.AuthenticodeSigner:404"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:405"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:408"
        BranchSideFuncs:
        - "setRetryWait(int)"
      - BranchSide: "net.jsign.AuthenticodeSigner:407"
        BranchSideFuncs:
        - "timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:385,1"
      Dst: "[net.jsign.Signable].createSignedContent(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.AuthenticodeSigner:386,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    - Src: "net.jsign.AuthenticodeSigner:387,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - Src: "net.jsign.AuthenticodeSigner:390,1"
      Dst: "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:396,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - Src: "net.jsign.AuthenticodeSigner:396,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:397,1"
      Dst: "[net.jsign.timestamp.Timestamper].create(net.jsign.timestamp.TimestampingMode)"
    - Src: "net.jsign.AuthenticodeSigner:400,1"
      Dst: "[net.jsign.timestamp.Timestamper].setURLs(java.lang.String[])"
    - Src: "net.jsign.AuthenticodeSigner:403,1"
      Dst: "[net.jsign.timestamp.Timestamper].setRetries(int)"
    - Src: "net.jsign.AuthenticodeSigner:406,1"
      Dst: "[net.jsign.timestamp.Timestamper].setRetryWait(int)"
    - Src: "net.jsign.AuthenticodeSigner:408,1"
      Dst: "[net.jsign.timestamp.Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContentType()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].<init>()"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addCertificates(net.jsign.bouncycastle.util.Store)"
    - "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
    - "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    functionUses: 1
    ICount: 21
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:416"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:415"
        BranchSideFuncs:
        - "addCertificates(net.jsign.bouncycastle.util.Store)"
        - "createSignerInfoGenerator()"
        - "<init>(java.util.Collection)"
        - "removeRoot(java.security.cert.Certificate[])"
        - "addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
      - BranchSide: "net.jsign.AuthenticodeSigner:414"
        BranchSideFuncs:
        - "getId()"
        - "<init>()"
        - "getContentType()"
        - "isAuthenticode(java.lang.String)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:416,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:416,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addCertificates(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.AuthenticodeSigner:418,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    - Src: "net.jsign.AuthenticodeSigner:418,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].<init>()"
    functionSourceFile: "net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator:37,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 465
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:468"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:471"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:470"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:471"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:478"
        BranchSideFuncs:
        - "isSelfSigned(java.security.cert.X509Certificate)"
      - BranchSide: "net.jsign.AuthenticodeSigner:477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:472"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:471"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "net.jsign.AuthenticodeSigner:470"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:466,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:469,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:472,1"
      Dst: "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    - "[java.security.cert.X509Certificate].getIssuerDN()"
    - "[java.security.Principal].equals(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.cert.X509Certificate].getIssuerDN()"
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.Principal].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].convertCerts(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.log4j.ThreadContext$EmptyThreadContextStack:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[java.util.Collection].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.security.cert.Certificate].getEncoded()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.cert.CertificateEncodingException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 32
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(byte[])"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-2"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(byte[])"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaCertStore:-1,1"
      Dst: "[java.security.cert.CertificateEncodingException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addCertificates(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 15
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    - "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:426"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:429"
        BranchSideFuncs:
        - "setProvider(java.security.Provider)"
      - BranchSide: "net.jsign.AuthenticodeSigner:428"
        BranchSideFuncs:
        - "build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
        - "<init>(net.jsign.AuthenticodeSigner)"
        - "<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
        - "build()"
        - "createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "build(java.security.PrivateKey)"
        - "<init>()"
        - "<init>(java.security.cert.X509Certificate)"
        - "setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithmIdentifier()"
        - "createAuthenticatedAttributes()"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:425,1"
      Dst: "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:425,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:427,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    - Src: "net.jsign.AuthenticodeSigner:429,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - Src: "net.jsign.AuthenticodeSigner:431,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:431,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - Src: "net.jsign.AuthenticodeSigner:434,1"
      Dst: "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    - Src: "net.jsign.AuthenticodeSigner:434,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.AuthenticodeSigner:435,1"
      Dst: "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
    - Src: "net.jsign.AuthenticodeSigner:438,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:441,1"
      Dst: "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    - Src: "net.jsign.AuthenticodeSigner:441,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Src: "net.jsign.AuthenticodeSigner:454,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:456,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getAlgorithm()"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getAlgorithm()"
    - "[net.jsign.jca.SigningServicePrivateKey].getAlgorithm()"
    - "[java.security.Key].getAlgorithm()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:299"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:301"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:300"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:301"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:303"
        BranchSideFuncs:
        - "getAlgorithm()"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:301,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:301,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.operator.ContentSigner"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoded()"
    - "[net.jsign.jca.SigningServicePrivateKey].getEncoded()"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getEncoded()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.security.Key].getEncoded()"
    - "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - "[java.security.Signature].initSign(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 50
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-2"
        BranchSideFuncs:
        - "<init>()"
        - "find(java.lang.String)"
        - "buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
        - "getEncoded()"
        - "getInstance(java.lang.Object)"
        - "createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "toUpperCase(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getPrivateKeyAlgorithm()"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].buildComposite(net.jsign.bouncycastle.jcajce.CompositePrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createSignature(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 519
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.asn1.authenticode.SpcStatementType].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 30
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:520,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:522,1"
      Dst: "[net.jsign.asn1.authenticode.SpcStatementType].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:525,1"
      Dst: "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcStatementType].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcStatementType"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.SpcStatementType:38"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcStatementType:43"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
      - BranchSide: "net.jsign.asn1.authenticode.SpcStatementType:42"
        BranchSideFuncs: []
    - Branch String: "net.jsign.asn1.authenticode.SpcStatementType:39"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcStatementType:43"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.asn1.authenticode.SpcStatementType:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:38,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:40,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:40,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.asn1.authenticode.SpcStatementType:40,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcSpOpusInfo"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - "[net.jsign.asn1.authenticode.SpcLink].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:52"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:55"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:54"
        BranchSideFuncs: []
    - Branch String: "net.jsign.asn1.authenticode.SpcSpOpusInfo:55"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:58"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.asn1.authenticode.SpcSpOpusInfo:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:51,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:53,1"
      Dst: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcSpOpusInfo:56,1"
      Dst: "[net.jsign.asn1.authenticode.SpcLink].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcString:42,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcString:43,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBMPString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBMPString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcLink].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcLink"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcLink:46,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcLink:41,1"
      Dst: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcLink:47,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 4
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getAttrType()"
        - "addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.cms.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "toHashtable()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Hashtable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
    functionSourceFile: "net.jsign.asn1.authenticode.FilteredAttributeTableGenerator"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.FilteredAttributeTableGenerator:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[java.security.cert.Certificate].getEncoded()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    functionSourceFile: "net.jsign.AuthenticodeSigner$1"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.AuthenticodeSigner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner$1:441,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    - "net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 576
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:578"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:577,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:577,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:578,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.AuthenticodeSigner:580,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:580,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 42
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getHashAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].setAssociatedCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].setAssociatedCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    functionUses: 1
    ICount: 42
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.operator.DigestCalculator"
    - "net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder"
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    functionUses: 2
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].setAssociatedCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedGenerator:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.Map].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 118
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "net.jsign.bouncycastle.cms.SignerInformation"
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getDigestAlgorithmID()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getDigestAlgorithmID()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 19
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "next()"
        - "getDigestAlgorithmID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getDigestAlgorithmID()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getDigestAlgorithmID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector:net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 37
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "get(int)"
        - "getUnsignedAttributes()"
        - "nextElement()"
        - "getSignature()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getObjects()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "get(int)"
        - "getUnsignedAttributes()"
        - "nextElement()"
        - "getSignature()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getObjects()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "get(int)"
        - "getUnsignedAttributes()"
        - "nextElement()"
        - "getSignature()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getObjects()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "get(int)"
        - "getUnsignedAttributes()"
        - "nextElement()"
        - "getSignature()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getObjects()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasMoreElements()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getSID()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 4
    ICount: 30
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformationStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformationStore:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "get(java.lang.Object)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformationStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformationStore:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "get(java.lang.Object)"
        - "getSID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 7
    ICount: 21
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 1
    ICount: 38
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 34
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.cms.SignerId].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getAuthenticatedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getEncryptedDigest()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getSID()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getUnauthenticatedAttributes()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].isTagged()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 45
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
        - "getSerialNumber()"
        - "getOctets()"
        - "getValue()"
        - "getSID()"
        - "isTagged()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "getEncryptedDigest()"
        - "getName()"
        - "getAuthenticatedAttributes()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getDigestEncryptionAlgorithm()"
        - "getUnauthenticatedAttributes()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
        - "getSerialNumber()"
        - "getOctets()"
        - "getValue()"
        - "getSID()"
        - "isTagged()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "getEncryptedDigest()"
        - "getName()"
        - "getAuthenticatedAttributes()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "getDigestEncryptionAlgorithm()"
        - "getUnauthenticatedAttributes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getSID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].isTagged()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerId].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getAuthenticatedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getUnauthenticatedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getEncryptedDigest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getSID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].isTagged()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerId].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerId:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerId:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerId:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerId:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerId:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerId].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getAuthenticatedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getUnauthenticatedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getEncryptedDigest()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[java.util.Collection].iterator()"
    functionUses: 9
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatingOutputStream()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCalculatingOutputStream()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatingOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatingOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getOutputStream()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getOutputStream()"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "getOutputStream()"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "getOutputStream()"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeOutputStream(java.io.OutputStream)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeOutputStream(java.io.OutputStream)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.NullOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.NullOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.AuthenticodeSigner$1].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].getAttributes(java.util.Map)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].getAttributes(java.util.Map)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getDigest()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].getOutputStream()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getSignature()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getSignature()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[net.jsign.bouncycastle.cms.CMSAttributeTableGenerator].getAttributes(java.util.Map)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getSignature()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 71
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "clone(byte[])"
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "getAttributes(java.util.Map)"
        - "getAlgorithm()"
        - "getEncoded(java.lang.String)"
        - "put(java.lang.Object,java.lang.Object)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getSignature()"
        - "getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigest()"
        - "close()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "clone(byte[])"
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "getAttributes(java.util.Map)"
        - "getAlgorithm()"
        - "getEncoded(java.lang.String)"
        - "put(java.lang.Object,java.lang.Object)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getSignature()"
        - "getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigest()"
        - "close()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "clone(byte[])"
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "getAttributes(java.util.Map)"
        - "getAlgorithm()"
        - "getEncoded(java.lang.String)"
        - "put(java.lang.Object,java.lang.Object)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getSignature()"
        - "getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigest()"
        - "close()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "clone(byte[])"
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "getAttributes(java.util.Map)"
        - "getAlgorithm()"
        - "getEncoded(java.lang.String)"
        - "put(java.lang.Object,java.lang.Object)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getSignature()"
        - "getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigest()"
        - "close()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "clone(byte[])"
        - "findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "getAttributes(java.util.Map)"
        - "getAlgorithm()"
        - "getEncoded(java.lang.String)"
        - "put(java.lang.Object,java.lang.Object)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getSignature()"
        - "getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigest()"
        - "close()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder].findEncryptionAlgorithm(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSAttributeTableGenerator].getAttributes(java.util.Map)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getSignature()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getBaseParameters(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getAttributeSet(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "toASN1EncodableVector()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Vector].elements()"
    functionUses: 3
    ICount: 23
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getInstance(java.lang.Object)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].isTagged()"
    functionUses: 2
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(long)"
        - "isTagged()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].isTagged()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "hasNext()"
        - "<init>()"
        - "next()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "hasNext()"
        - "<init>()"
        - "next()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 7
    ICount: 21
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[java.util.Set].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionUses: 2
    ICount: 24
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 62
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 30
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getVersion()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "hasValue(int)"
        - "getVersion()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "hasValue(int)"
        - "getVersion()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getVersion()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 485
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    - "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
    - "[net.jsign.bouncycastle.operator.OperatorException].getCause()"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.util.encoders.EncoderException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.util.encoders.DecoderException].getCause()"
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSAttributeTableGenerationException].getCause()"
    - "[net.jsign.bouncycastle.openssl.EncryptionException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Exception].getCause()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseWrapCipher$InvalidKeyOrParametersException].getCause()"
    - "[net.jsign.bouncycastle.util.io.pem.PemGenerationException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].getCause()"
    - "[net.jsign.bouncycastle.openssl.PEMException].getCause()"
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].getCause()"
    - "[net.jsign.bouncycastle.pkcs.PKCSException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException].getCause()"
    - "[net.jsign.bouncycastle.tsp.TSPIOException].getCause()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException].getCause()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].getCause()"
    - "[net.jsign.bouncycastle.util.StoreException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSRuntimeException].getCause()"
    - "[net.jsign.bouncycastle.pkcs.PKCSIOException].getCause()"
    - "[net.jsign.bouncycastle.cert.CertIOException].getCause()"
    - "[net.jsign.bouncycastle.cert.CertException].getCause()"
    - "[net.jsign.bouncycastle.crypto.CryptoException].getCause()"
    - "[net.jsign.bouncycastle.crypto.io.CipherIOException].getCause()"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].getCause()"
    - "[net.jsign.bouncycastle.tsp.TSPException].getCause()"
    - "[java.security.cert.Certificate].getPublicKey()"
    - "[java.lang.Throwable].getCause()"
    - "[java.security.cert.X509Certificate].getBasicConstraints()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.SignatureException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 49
    EdgeCount: 62
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:497"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:502"
        BranchSideFuncs:
        - "verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
        - "<init>()"
        - "build(java.security.PublicKey)"
        - "getCause()"
        - "build()"
        - "bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
      - BranchSide: "net.jsign.AuthenticodeSigner:501"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:502"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:512"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:511"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:503"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:502"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:505"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:508"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:507"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:487,1"
      Dst: "[java.security.cert.Certificate].getPublicKey()"
    - Src: "net.jsign.AuthenticodeSigner:488,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:488,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - Src: "net.jsign.AuthenticodeSigner:489,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - Src: "net.jsign.AuthenticodeSigner:489,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    - Src: "net.jsign.AuthenticodeSigner:494,1"
      Dst: "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.AuthenticodeSigner:494,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
    - Src: "net.jsign.AuthenticodeSigner:497,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "net.jsign.AuthenticodeSigner:503,1"
      Dst: "[java.security.cert.X509Certificate].getBasicConstraints()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.AuthenticodeSigner:510,1"
      Dst: "[java.security.SignatureException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 358
    EdgeCount: 142
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 74
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper].createContentVerifierProvider(java.security.PublicKey)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.PublicKey)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper].createContentVerifierProvider(java.security.PublicKey)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.PublicKey)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.PublicKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,java.security.PublicKey)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,java.security.PublicKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator"
    - "net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder"
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.AuthenticodeSigner$lambda_verify_0__11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifierProvider"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].<init>(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner$lambda_verify_0__11:-1,1"
      Dst: "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].<init>(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].<init>(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.AuthenticodeSigner$lambda_verify_0__11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner$lambda_verify_0__11:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifierProvider"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].get(net.jsign.bouncycastle.cms.SignerId)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getSID()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifierProvider].get(net.jsign.bouncycastle.cms.SignerId)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 39
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "getSignerInfos()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "getSignerInfos()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "getSignerInfos()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "getSignerInfos()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "getSignerInfos()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifierProvider].get(net.jsign.bouncycastle.cms.SignerId)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    functionUses: 2
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.cms.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.Time].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1EncodableVector:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].size()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 3
    ICount: 50
    EdgeCount: 115
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getSignedAttributes()"
        - "toASN1Primitive()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getSignedAttributes()"
        - "toASN1Primitive()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getSignedAttributes()"
        - "toASN1Primitive()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getSignedAttributes()"
        - "toASN1Primitive()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 5
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getEndDate()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getStartDate()"
    - "[java.util.Date].before(java.util.Date)"
    - "[java.util.Date].after(java.util.Date)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CertificateHolder:-2"
        BranchSideFuncs:
        - "getEndDate()"
        - "getStartDate()"
        - "getDate()"
    - Branch String: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CertificateHolder:-2"
        BranchSideFuncs:
        - "getEndDate()"
        - "getStartDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getStartDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.util.Date].before(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getEndDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.util.Date].after(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getStartDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getStartDate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getStartDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getStartDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getEndDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getEndDate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getEndDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getEndDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getDigest()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getEncodedSignedAttributes()"
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].getEncryptionAlgName(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getEncryptionAlgOID()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].getOutputStream()"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].getOutputStream()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].verify(byte[],byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$RawSigVerifier].verify(byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$SigVerifier].verify(byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$CompositeVerifier].verify(byte[])"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verifyContentTypeAttributeValue()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verifyMessageDigestAttribute()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.io.OutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.operator.RawContentVerifier].verify(byte[],byte[])"
    - "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    functionUses: 1
    ICount: 128
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "getOutputStream()"
        - "verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "verifyContentTypeAttributeValue()"
        - "getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithm()"
        - "verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "getDigestAlgorithm()"
        - "getSignature()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "close()"
        - "verify(byte[])"
        - "translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSignedAttributes()"
        - "getEncodedSignedAttributes()"
        - "getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getEncryptionAlgName(java.lang.String)"
        - "getEncryptionAlgOID()"
        - "verify(byte[],byte[])"
        - "verifyMessageDigestAttribute()"
        - "getEncoded(java.lang.String)"
        - "<init>(java.lang.String)"
        - "getDigest()"
        - "write(java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getEncryptionAlgOID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getEncryptionAlgName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getEncodedSignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verifyContentTypeAttributeValue()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verifyMessageDigestAttribute()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.RawContentVerifier].verify(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifier].verify(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 32
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getEncryptionAlgOID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getEncryptionAlgName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].translateBrokenRSAPkcs7(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getContentVerifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.ContentVerifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder].find(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.DigestCalculator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getEncodedSignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verifyContentTypeAttributeValue()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 1
    ICount: 29
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verifyAlgorithmIdentifierProtectionAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttributeValues()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getSignatureAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector:net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    functionUses: 1
    ICount: 49
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getDigestAlgorithm()"
        - "getSignatureAlgorithm()"
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getAttributeValues()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestEncryptionAlgorithm()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttributeValues()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getSignatureAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttributeValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toArray()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 35
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getDigestAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verifyMessageDigestAttribute()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignerDigestMismatchException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "getOctets()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "getOctets()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "getOctets()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
        - "getOctets()"
        - "constantTimeAreEqual(byte[],byte[])"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSingleValuedSignedAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignerDigestMismatchException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignerDigestMismatchException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignerDigestMismatchException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignerDigestMismatchException:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verifyCounterSignatureAttribute(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector:net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 1
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "get(int)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
        - "getUnsignedAttributes()"
        - "getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformation"
    - "net.jsign.bouncycastle.cms.SignerInformationVerifierProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].get(net.jsign.bouncycastle.cms.SignerId)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getSID()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifierProvider].get(net.jsign.bouncycastle.cms.SignerId)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 19
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.cms.SignerId)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "getSigners()"
        - "next()"
        - "verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
        - "getSID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifierProvider].get(net.jsign.bouncycastle.cms.SignerId)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].verifyCounterSignature(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.cms.SignerInformationVerifierProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 538
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].replaceUnsignedAttributes(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(net.jsign.bouncycastle.cms.SignerInformation)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 52
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:542"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:545"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
      - BranchSide: "net.jsign.AuthenticodeSigner:544"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Branch String: "net.jsign.AuthenticodeSigner:546"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:550"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "<init>()"
        - "getAttrValues()"
    - Branch String: "net.jsign.AuthenticodeSigner:552"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:555"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getAttrValues()"
      - BranchSide: "net.jsign.AuthenticodeSigner:554"
        BranchSideFuncs:
        - "toASN1EncodableVector()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "toASN1Structure()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.AuthenticodeSigner:541,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.AuthenticodeSigner:543,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:543,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:545,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:548,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.AuthenticodeSigner:548,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:551,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.AuthenticodeSigner:553,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:557,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:557,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - Src: "net.jsign.AuthenticodeSigner:558,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.AuthenticodeSigner:558,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:560,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.AuthenticodeSigner:563,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].replaceUnsignedAttributes(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.AuthenticodeSigner:564,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(net.jsign.bouncycastle.cms.SignerInformation)"
    - Src: "net.jsign.AuthenticodeSigner:564,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "getAttrType()"
        - "addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
        - "get(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].addAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.cms.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].replaceUnsignedAttributes(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformation"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformation"
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getAuthenticatedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getEncryptedDigest()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getSID()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    functionUses: 2
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "toASN1EncodableVector()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "getDigestAlgorithm()"
        - "getEncryptedDigest()"
        - "getAuthenticatedAttributes()"
        - "getDigestEncryptionAlgorithm()"
        - "getSID()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getSID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getAuthenticatedAttributes()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestEncryptionAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getEncryptedDigest()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1OctetString,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(net.jsign.bouncycastle.cms.SignerInformation)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.SignerInformationStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.SignerInformationStore"
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 53
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "hasNext()"
        - "toASN1Primitive()"
        - "next()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "toASN1Structure()"
        - "getObjectAt(int)"
        - "iterator()"
        - "convertToDlSet(java.util.Set)"
        - "getSigners()"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "hasNext()"
        - "toASN1Primitive()"
        - "next()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "toASN1Structure()"
        - "getObjectAt(int)"
        - "iterator()"
        - "convertToDlSet(java.util.Set)"
        - "getSigners()"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].isDefiniteLength()"
    functionUses: 111
    ICount: 54
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].isDefiniteLength()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].isDefiniteLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.SignedData"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.mscab.MSCabinetFile].isMSCabinetFile(java.io.File)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].isFile()"
    - "[net.jsign.mscab.MSCabinetFile].<init>(java.io.File)"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:78"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:78"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:82"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:87"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:87"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:87"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:90"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:78,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.mscab.MSCabinetFile:78,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.mscab.MSCabinetFile:83,1"
      Dst: "[net.jsign.mscab.MSCabinetFile].<init>(java.io.File)"
    - Src: "net.jsign.mscab.MSCabinetFile:84,1"
      Dst: "[net.jsign.mscab.MSCabinetFile].close()"
    - Src: "net.jsign.mscab.MSCabinetFile:87,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.mscab.MSCabinetFile:87,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.mscab.MSCabinetFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.mscab.CFHeader].<init>()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.mscab.CFHeader].getSignature()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.StringBuilder].append(long)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:117"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:117"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:118"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:123"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:66,1"
      Dst: "[net.jsign.mscab.CFHeader].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:114,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:115,1"
      Dst: "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:117,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.MSCabinetFile:122,1"
      Dst: "[net.jsign.mscab.CFHeader].getSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:127,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:128,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.mscab.CFHeader].<init>()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: -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.jsign.mscab.CFHeader:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].get()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:122"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:130"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:148"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:161"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:157"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:122,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.CFHeader:123,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.CFHeader:125,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CFHeader:125,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CFHeader:126,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFHeader:127,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CFHeader:129,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.mscab.CFHeader:139,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.mscab.CFHeader:141,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.mscab.CFHeader:148,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.CFHeader:149,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.mscab.CFHeader:150,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.mscab.CFHeader:159,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:230"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:229"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].getSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 1
    returnType: "net.jsign.mscab.CABSignature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:238"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:237"
        BranchSideFuncs:
        - "<init>(byte[])"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:238,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionSourceFile: "net.jsign.mscab.CABSignature"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.nio.ByteBuffer].getLong()"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 2
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CABSignature:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.CABSignature:58,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.mscab.CABSignature:58,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CABSignature:59,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.mscab.CABSignature:60,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.mscab.CABSignature:63,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    - Src: "net.jsign.mscab.CABSignature:64,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].close()"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:135,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.mscab.MSCabinetFile:102,1"
      Dst: "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.mscab.CFHeader].<init>()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.mscab.CFHeader].getSignature()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.StringBuilder].append(long)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:117"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:117"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:118"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:123"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:127"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:66,1"
      Dst: "[net.jsign.mscab.CFHeader].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:114,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:115,1"
      Dst: "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:117,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.mscab.MSCabinetFile:119,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.MSCabinetFile:122,1"
      Dst: "[net.jsign.mscab.CFHeader].getSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:127,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:128,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.mscab.MSCabinetFile].close()"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:135,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[net.jsign.mscab.CABSignature].<init>()"
    - "[net.jsign.mscab.CABSignature].array()"
    - "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    - "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.mscab.CFFolder].digest(java.security.MessageDigest)"
    - "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    - "[net.jsign.mscab.CFHeader].getSignature()"
    - "[net.jsign.mscab.CFHeader].hasSignature()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.security.MessageDigest].update(byte[])"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.security.MessageDigest].digest()"
    functionUses: 1
    ICount: 97
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:144"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:149"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:160"
        BranchSideFuncs:
        - "array()"
        - "<init>()"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:159"
        BranchSideFuncs:
        - "getHeaderSize()"
        - "hasPreviousCabinet()"
        - "headerDigestUpdate(java.security.MessageDigest)"
    - Branch String: "net.jsign.mscab.MSCabinetFile:164"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:168"
        BranchSideFuncs:
        - "hasNextCabinet()"
    - Branch String: "net.jsign.mscab.MSCabinetFile:169"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:174"
        BranchSideFuncs:
        - "readNullTerminatedString(java.nio.channels.ByteChannel)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:174"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:180"
        BranchSideFuncs:
        - "hasSignature()"
        - "getSignature()"
    - Branch String: "net.jsign.mscab.MSCabinetFile:181"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:181"
        BranchSideFuncs:
        - "updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:180"
        BranchSideFuncs:
        - "hasSignature()"
        - "getSignature()"
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:140,1"
      Dst: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - Src: "net.jsign.mscab.MSCabinetFile:142,1"
      Dst: "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    - Src: "net.jsign.mscab.MSCabinetFile:144,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.MSCabinetFile:155,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:158,1"
      Dst: "[net.jsign.mscab.CABSignature].array()"
    - Src: "net.jsign.mscab.MSCabinetFile:160,1"
      Dst: "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    - Src: "net.jsign.mscab.MSCabinetFile:162,1"
      Dst: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - Src: "net.jsign.mscab.MSCabinetFile:162,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:164,1"
      Dst: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:165,1"
      Dst: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:165,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:169,1"
      Dst: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:175,1"
      Dst: "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:177,1"
      Dst: "[net.jsign.mscab.CFFolder].digest(java.security.MessageDigest)"
    - Src: "net.jsign.mscab.MSCabinetFile:178,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.mscab.MSCabinetFile:178,1"
      Dst: "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[net.jsign.mscab.CFHeader].hasSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[net.jsign.mscab.CFHeader].getSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:184,1"
      Dst: "[java.security.MessageDigest].digest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 13
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:109,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "net.jsign.DigestAlgorithm:111,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.mscab.CFHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 42
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:118"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:102"
        BranchSideFuncs:
        - "clone()"
      - BranchSide: "net.jsign.mscab.CFHeader:101"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.CFHeader:118,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:230"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:229"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CABSignature].<init>()"
    functionSourceFile: "net.jsign.mscab.CABSignature"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CABSignature:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CABSignature].array()"
    functionSourceFile: "net.jsign.mscab.CABSignature"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putLong(long)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].array()"
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CABSignature:68,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CABSignature:68,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CABSignature:69,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CABSignature:72,1"
      Dst: "[java.nio.ByteBuffer].putLong(long)"
    - Src: "net.jsign.mscab.CABSignature:73,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CABSignature:75,1"
      Dst: "[java.nio.ByteBuffer].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.MessageDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - "[java.security.MessageDigest].update(byte[],int,int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:216"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:197,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CFHeader:197,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CFHeader:199,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFHeader:205,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.mscab.CFHeader:207,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFHeader:213,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CFHeader:214,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFHeader:217,1"
      Dst: "[java.security.MessageDigest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:189"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:192"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:189,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:222"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.nio.channels.ByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 8
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:131"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.ChannelUtils:137"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:125,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.ChannelUtils:127,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:129,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:130,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:131,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.ChannelUtils:134,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:135,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.ChannelUtils:136,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.ChannelUtils:138,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.ChannelUtils:139,1"
      Dst: "[java.io.ByteArrayOutputStream].close()"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:226"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:225"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "net.jsign.mscab.CFFolder"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFFolder].<init>()"
    - "[net.jsign.mscab.CFFolder].load()"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFFolder:57"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFFolder:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFFolder:59"
        BranchSideFuncs:
        - "load()"
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:54,1"
      Dst: "[net.jsign.mscab.CFFolder].<init>()"
    - Src: "net.jsign.mscab.CFFolder:56,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFFolder:58,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.CFFolder:60,1"
      Dst: "[net.jsign.mscab.CFFolder].load()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFFolder].<init>()"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.CFFolder:39,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CFFolder:39,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFFolder].load()"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:66,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.mscab.CFFolder:67,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.mscab.CFFolder:68,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.mscab.CFFolder:70,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFFolder].digest(java.security.MessageDigest)"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.MessageDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFFolder].save()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.security.MessageDigest].update(byte[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:87,1"
      Dst: "[net.jsign.mscab.CFFolder].save()"
    - Src: "net.jsign.mscab.CFFolder:88,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.mscab.CFFolder:88,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFFolder].save()"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:74,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.mscab.CFFolder:75,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFFolder:76,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFFolder:78,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "java.security.MessageDigest"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].capacity()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].limit()"
    functionUses: 9
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:109"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:119"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:104,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:106,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:110,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.ChannelUtils:111,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:112,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:113,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.ChannelUtils:115,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:117,1"
      Dst: "[java.nio.Buffer].limit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].hasSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:234"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:233"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].getSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 1
    returnType: "net.jsign.mscab.CABSignature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:238"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:237"
        BranchSideFuncs:
        - "<init>(byte[])"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:238,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.MSCabinetFile].createIndirectData(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.mscab.MSCabinetFile].computeDigest(net.jsign.DigestAlgorithm)"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].<init>()"
    - "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:189,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.mscab.MSCabinetFile:190,1"
      Dst: "[net.jsign.mscab.MSCabinetFile].computeDigest(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.mscab.MSCabinetFile:190,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:191,1"
      Dst: "[net.jsign.asn1.authenticode.SpcPeImageData].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:191,1"
      Dst: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    - Src: "net.jsign.mscab.MSCabinetFile:193,1"
      Dst: "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[net.jsign.mscab.CABSignature].<init>()"
    - "[net.jsign.mscab.CABSignature].array()"
    - "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    - "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.mscab.CFFolder].digest(java.security.MessageDigest)"
    - "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    - "[net.jsign.mscab.CFHeader].getSignature()"
    - "[net.jsign.mscab.CFHeader].hasSignature()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.security.MessageDigest].update(byte[])"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.security.MessageDigest].digest()"
    functionUses: 1
    ICount: 97
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:144"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:149"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:160"
        BranchSideFuncs:
        - "array()"
        - "<init>()"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:159"
        BranchSideFuncs:
        - "getHeaderSize()"
        - "hasPreviousCabinet()"
        - "headerDigestUpdate(java.security.MessageDigest)"
    - Branch String: "net.jsign.mscab.MSCabinetFile:164"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:168"
        BranchSideFuncs:
        - "hasNextCabinet()"
    - Branch String: "net.jsign.mscab.MSCabinetFile:169"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:174"
        BranchSideFuncs:
        - "readNullTerminatedString(java.nio.channels.ByteChannel)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:174"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:180"
        BranchSideFuncs:
        - "hasSignature()"
        - "getSignature()"
    - Branch String: "net.jsign.mscab.MSCabinetFile:181"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:181"
        BranchSideFuncs:
        - "updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:180"
        BranchSideFuncs:
        - "hasSignature()"
        - "getSignature()"
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:140,1"
      Dst: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - Src: "net.jsign.mscab.MSCabinetFile:142,1"
      Dst: "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    - Src: "net.jsign.mscab.MSCabinetFile:144,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.MSCabinetFile:155,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:158,1"
      Dst: "[net.jsign.mscab.CABSignature].array()"
    - Src: "net.jsign.mscab.MSCabinetFile:160,1"
      Dst: "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    - Src: "net.jsign.mscab.MSCabinetFile:162,1"
      Dst: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - Src: "net.jsign.mscab.MSCabinetFile:162,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:164,1"
      Dst: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:165,1"
      Dst: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:165,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:169,1"
      Dst: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:175,1"
      Dst: "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:177,1"
      Dst: "[net.jsign.mscab.CFFolder].digest(java.security.MessageDigest)"
    - Src: "net.jsign.mscab.MSCabinetFile:178,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.mscab.MSCabinetFile:178,1"
      Dst: "[net.jsign.ChannelUtils].updateDigest(java.nio.channels.SeekableByteChannel,java.security.MessageDigest,long,long)"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[net.jsign.mscab.CFHeader].hasSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[net.jsign.mscab.CFHeader].getSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:181,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:184,1"
      Dst: "[java.security.MessageDigest].digest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcPeImageData].<init>()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcPeImageData"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - "[net.jsign.asn1.authenticode.SpcLink].<init>()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:45,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:52,1"
      Dst: "[net.jsign.asn1.authenticode.SpcLink].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcLink].<init>()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcLink"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcLink:43,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcLink:41,1"
      Dst: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcString:42,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcString:43,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:41,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcIndirectDataContent"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    - "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcIndirectDataContent:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].getSignatures()"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].getSignature()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[java.util.ArrayList].<init>()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.IOException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 63
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "getUnsignedAttributes()"
        - "readObject()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(byte[])"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "getUnsignedAttributes()"
        - "readObject()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(byte[])"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "getUnsignedAttributes()"
        - "readObject()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(byte[])"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "getUnsignedAttributes()"
        - "readObject()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(byte[])"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:212"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:214"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getAttrValues()"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:215"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:223"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "next()"
        - "iterator()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:198,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.mscab.MSCabinetFile:200,1"
      Dst: "[net.jsign.mscab.CFHeader].getSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:201,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:203,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:204,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:204,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.MSCabinetFile:207,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:207,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.mscab.MSCabinetFile:207,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.mscab.MSCabinetFile:207,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.mscab.MSCabinetFile:208,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.mscab.MSCabinetFile:210,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.mscab.MSCabinetFile:210,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.mscab.MSCabinetFile:210,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.mscab.MSCabinetFile:210,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.mscab.MSCabinetFile:211,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.mscab.MSCabinetFile:213,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.mscab.MSCabinetFile:215,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.mscab.MSCabinetFile:215,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - Src: "net.jsign.mscab.MSCabinetFile:215,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.mscab.MSCabinetFile:222,1"
      Dst: "[java.io.IOException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.mscab.CFHeader].getSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 1
    returnType: "net.jsign.mscab.CABSignature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:238"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:237"
        BranchSideFuncs:
        - "<init>(byte[])"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:238,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].hasSignature()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[net.jsign.ChannelUtils].insert(java.nio.channels.SeekableByteChannel,long,byte[])"
    - "[net.jsign.mscab.CABSignature].<init>(byte[])"
    - "[net.jsign.mscab.CABSignature].array()"
    - "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - "[net.jsign.mscab.CFHeader].write(java.nio.ByteBuffer)"
    - "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - "[net.jsign.mscab.CFFolder].write(java.nio.channels.SeekableByteChannel)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.nio.channels.SeekableByteChannel].truncate(long)"
    functionUses: 1
    ICount: 121
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.mscab.MSCabinetFile:229"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:233"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:232"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "getEncoded(java.lang.String)"
    - Branch String: "net.jsign.mscab.MSCabinetFile:229"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:233"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:232"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "getEncoded(java.lang.String)"
    - Branch String: "net.jsign.mscab.MSCabinetFile:233"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:233"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "getEncoded(java.lang.String)"
        - "isReservePresent()"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:232"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "getEncoded(java.lang.String)"
    - Branch String: "net.jsign.mscab.MSCabinetFile:237"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:242"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:248"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:248"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:254"
        BranchSideFuncs:
        - "insert(java.nio.channels.SeekableByteChannel,long,byte[])"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:253"
        BranchSideFuncs:
        - "getHeaderSize()"
        - "array()"
        - "write(java.nio.ByteBuffer)"
        - "hasPreviousCabinet()"
        - "<init>(byte[])"
    - Branch String: "net.jsign.mscab.MSCabinetFile:268"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:273"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:272"
        BranchSideFuncs:
        - "hasNextCabinet()"
    - Branch String: "net.jsign.mscab.MSCabinetFile:273"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:279"
        BranchSideFuncs:
        - "readNullTerminatedString(java.nio.channels.ByteChannel)"
      - BranchSide: "net.jsign.mscab.MSCabinetFile:278"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:279"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:288"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.MSCabinetFile:293"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.MSCabinetFile:296"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.MSCabinetFile:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.MSCabinetFile:229,1"
      Dst: "[net.jsign.mscab.CFHeader].hasSignature()"
    - Src: "net.jsign.mscab.MSCabinetFile:233,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.mscab.MSCabinetFile:233,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.mscab.MSCabinetFile:237,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.MSCabinetFile:249,1"
      Dst: "[net.jsign.ChannelUtils].insert(java.nio.channels.SeekableByteChannel,long,byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:254,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:258,1"
      Dst: "[net.jsign.mscab.CABSignature].array()"
    - Src: "net.jsign.mscab.MSCabinetFile:261,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.mscab.MSCabinetFile:262,1"
      Dst: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    - Src: "net.jsign.mscab.MSCabinetFile:262,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.MSCabinetFile:262,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.MSCabinetFile:263,1"
      Dst: "[net.jsign.mscab.CFHeader].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.MSCabinetFile:264,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.MSCabinetFile:265,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.MSCabinetFile:268,1"
      Dst: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:269,1"
      Dst: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:273,1"
      Dst: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    - Src: "net.jsign.mscab.MSCabinetFile:280,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.mscab.MSCabinetFile:281,1"
      Dst: "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:285,1"
      Dst: "[net.jsign.mscab.CFFolder].write(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.mscab.MSCabinetFile:290,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.mscab.MSCabinetFile:293,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.MSCabinetFile:294,1"
      Dst: "[java.nio.channels.SeekableByteChannel].truncate(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.mscab.CFHeader].hasSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:234"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:233"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:230"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:229"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].insert(java.nio.channels.SeekableByteChannel,long,byte[])"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    - "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.Channel].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.File].delete()"
    functionUses: 1
    ICount: 43
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:76"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:79"
        BranchSideFuncs:
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - Branch String: "net.jsign.ChannelUtils:89"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:90"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:89"
        BranchSideFuncs: []
    - Branch String: "net.jsign.ChannelUtils:81"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:91"
        BranchSideFuncs:
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
        - "copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
      - BranchSide: "net.jsign.ChannelUtils:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:76,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.ChannelUtils:77,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.ChannelUtils:80,1"
      Dst: "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - Src: "net.jsign.ChannelUtils:81,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.ChannelUtils:81,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.ChannelUtils:82,1"
      Dst: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.ChannelUtils:84,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.ChannelUtils:85,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.ChannelUtils:85,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:88,1"
      Dst: "[net.jsign.ChannelUtils].copy(java.nio.channels.SeekableByteChannel,java.nio.channels.SeekableByteChannel,long)"
    - Src: "net.jsign.ChannelUtils:89,1"
      Dst: "[java.nio.channels.Channel].close()"
    - Src: "net.jsign.ChannelUtils:91,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.ChannelUtils:90,1"
      Dst: "[java.io.File].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionSourceFile: "net.jsign.mscab.CABSignature"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.nio.ByteBuffer].getLong()"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 2
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CABSignature:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.CABSignature:58,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.mscab.CABSignature:58,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CABSignature:59,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.mscab.CABSignature:60,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.mscab.CABSignature:63,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    - Src: "net.jsign.mscab.CABSignature:64,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CABSignature].array()"
    functionSourceFile: "net.jsign.mscab.CABSignature"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putLong(long)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].array()"
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CABSignature:68,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CABSignature:68,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CABSignature:69,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CABSignature:72,1"
      Dst: "[java.nio.ByteBuffer].putLong(long)"
    - Src: "net.jsign.mscab.CABSignature:73,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CABSignature:75,1"
      Dst: "[java.nio.ByteBuffer].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:189"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:192"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:189,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].write(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].put(byte[])"
    functionUses: 1
    ICount: 53
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:178"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:182"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:165,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFHeader:171,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.mscab.CFHeader:173,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFHeader:178,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.CFHeader:183,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:222"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ChannelUtils].readNullTerminatedString(java.nio.channels.ByteChannel)"
    functionSourceFile: "net.jsign.ChannelUtils"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.nio.channels.ByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 8
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ChannelUtils:131"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.ChannelUtils:137"
      Branch Sides:
      - BranchSide: "net.jsign.ChannelUtils:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ChannelUtils:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ChannelUtils:125,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.ChannelUtils:127,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.ChannelUtils:129,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.ChannelUtils:130,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.ChannelUtils:131,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.ChannelUtils:134,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.ChannelUtils:135,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.ChannelUtils:136,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.ChannelUtils:138,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.ChannelUtils:139,1"
      Dst: "[java.io.ByteArrayOutputStream].close()"
    - Src: "net.jsign.ChannelUtils:132,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:226"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:225"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFFolder].read(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "net.jsign.mscab.CFFolder"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFFolder].<init>()"
    - "[net.jsign.mscab.CFFolder].load()"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFFolder:57"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFFolder:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFFolder:59"
        BranchSideFuncs:
        - "load()"
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:54,1"
      Dst: "[net.jsign.mscab.CFFolder].<init>()"
    - Src: "net.jsign.mscab.CFFolder:56,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFFolder:58,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.CFFolder:60,1"
      Dst: "[net.jsign.mscab.CFFolder].load()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFFolder].write(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFFolder].save()"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:82,1"
      Dst: "[net.jsign.mscab.CFFolder].save()"
    - Src: "net.jsign.mscab.CFFolder:83,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFFolder].save()"
    functionSourceFile: "net.jsign.mscab.CFFolder"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.mscab.CFFolder:74,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.mscab.CFFolder:75,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFFolder:76,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFFolder:78,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.MSCabinetFile].save()"
    functionSourceFile: "net.jsign.mscab.MSCabinetFile"
    linkageType: null
    functionLinenumber: 299
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:49,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:40,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:50,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:51,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:52,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:53,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:54,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:67,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:40,1"
      Dst: "[java.util.HashSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].changeName(net.jsign.poi.poifs.property.Property,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:86"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:81,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:83,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:86,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:95,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:96,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].deleteChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property:net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[java.util.List].remove(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:111,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:115,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:115,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].isDirectory()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].preWrite()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].<init>()"
    - "[net.jsign.poi.poifs.property.Property].getIndex()"
    - "[net.jsign.poi.poifs.property.Property].setChildProperty(int)"
    - "[net.jsign.poi.poifs.property.Property].setPreviousChild(net.jsign.poi.poifs.property.Child)"
    - "[net.jsign.poi.poifs.property.Property].setNextChild(net.jsign.poi.poifs.property.Child)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    functionUses: 1
    ICount: 66
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:192"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:227"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:202"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:206"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:207"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:212"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:224"
        BranchSideFuncs:
        - "setNextChild(net.jsign.poi.poifs.property.Child)"
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:215"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:219"
        BranchSideFuncs:
        - "setPreviousChild(net.jsign.poi.poifs.property.Child)"
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:192,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:194,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:196,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:196,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:199,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getIndex()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:199,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setChildProperty(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:200,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPreviousChild(net.jsign.poi.poifs.property.Child)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:201,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNextChild(net.jsign.poi.poifs.property.Child)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:120,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:238,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:245,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:238,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].spliterator()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Spliterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].spliterator()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:257,1"
      Dst: "[java.util.List].spliterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:273"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:276"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:271,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:277,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:278,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].getSBox()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].getUKM()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.asn1.x9.X9FieldID,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].getSeed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].hasSeed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getCurveEntry()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getFieldIDEntry()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9FieldID"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].getBaseEntry()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 36
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(java.math.BigInteger)"
        - "<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9Curve].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9Curve].setFieldIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set,java.util.Set)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set,java.util.Set)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(java.lang.String,java.util.Set,java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Set"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSequence(java.util.Set)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSequence(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].getAlias()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].getUses()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].getProhibitions()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSet(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toSequence(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].isEmpty()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toASN1Sequence()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERUTF8String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERUTF8String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTF8String].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameterGenerator].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameterGenerator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen].engineInit(java.security.spec.AlgorithmParameterSpec,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen].engineGenerateParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.AlgorithmParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameterGenerator].createParametersInstance(java.lang.String)"
    - "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - "[java.security.AlgorithmParameters].init(java.security.spec.AlgorithmParameterSpec)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameterGenerator].createParametersInstance(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[java.security.AlgorithmParameters].init(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AlgParamGen:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$ThreadLocalSecureRandomProvider].get()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$2:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$2].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.SecureRandomProvider].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
        - "isOverrideSet(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extension"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].<init>(net.jsign.bouncycastle.asn1.x509.Extension[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extension[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "getExtnId()"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnId()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].oids()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 110
    ICount: 19
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].equivalent(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].size()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getNonCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getCriticalExtensionOIDs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].toOidArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].<init>()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.LogManager:132,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].exists(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getContext()"
    - "[net.jsign.log4j.spi.LoggerContext].hasLogger(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:143,1"
      Dst: "[net.jsign.log4j.LogManager].getContext()"
    - Src: "net.jsign.log4j.LogManager:143,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].hasLogger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:157,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:160,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:157,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:159,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:160,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.LogManager].getContext(boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:176,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:179,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String)"
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:196,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:199,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:218,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:220,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:220,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:220,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:220,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:220,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:221,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean,java.net.URI)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:240,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:242,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:242,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:242,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:242,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:242,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:243,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean,java.lang.Object,java.net.URI)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    - "java.lang.Object"
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:264,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:266,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:266,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:266,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:266,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:266,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:267,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean,java.lang.Object,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 5
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    - "java.lang.Object"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:289,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:291,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:291,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:291,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:291,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:291,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:292,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:309,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:311,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:311,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:311,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:311,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:311,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:312,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.String,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:331,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:333,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:333,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:333,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:333,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:333,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:334,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.String,java.lang.ClassLoader,boolean,java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "boolean"
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:356,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:358,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:358,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:358,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:358,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:358,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:359,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContextFactory"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].shutdown()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].shutdown(boolean)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:373,1"
      Dst: "[net.jsign.log4j.LogManager].shutdown(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].shutdown(boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:392,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].shutdown(boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:392,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].shutdown(boolean,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:412,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].shutdown(java.lang.String,java.lang.ClassLoader,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].shutdown(net.jsign.log4j.spi.LoggerContext)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.LoggerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.Terminable].terminate()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:426"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:429"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:427,1"
      Dst: "[net.jsign.log4j.spi.Terminable].terminate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.LogManager].getFactory()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 436
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerContextFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].setFactory(net.jsign.log4j.spi.LoggerContextFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.LoggerContextFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.log4j.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:469,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:469,1"
      Dst: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocator"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].toString(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 1
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.StackLocator:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StackLocator:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StackLocator:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.StackLocator:153"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.StackLocator:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.StackLocator:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocator:151,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.log4j.util.StackLocator:151,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.StackLocator:159,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.util.StackLocator:159,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:500"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:499"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:568"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:571"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:570"
        BranchSideFuncs:
        - "getCallerClass(int)"
    - Branch String: "net.jsign.log4j.LogManager:572"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:575"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:574"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:571,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:573,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String)"
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:196,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:199,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:500"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:499"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:532"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:531"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:532,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.LogManager:532,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:532,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:563"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:563,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:563,1"
      Dst: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:563,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getFormatterLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:500"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:499"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:500,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getContext(boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:679"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(boolean)"
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.LogManager:680,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getContext(boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:176,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:179,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:568"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:571"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:570"
        BranchSideFuncs:
        - "getCallerClass(int)"
    - Branch String: "net.jsign.log4j.LogManager:572"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:575"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:574"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:571,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:573,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.LogManager].getLogger()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:585,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:585,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 597
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:598,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:568"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:571"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:570"
        BranchSideFuncs:
        - "getCallerClass(int)"
    - Branch String: "net.jsign.log4j.LogManager:572"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:575"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.LogManager:574"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:571,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:573,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String)"
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:196,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:198,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:199,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 597
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:598,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:627,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:627,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:640"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:639"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:640,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.LogManager:640,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:640,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 597
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:598,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Object,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:655"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:654"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:655,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.LogManager:655,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:655,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:614,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:615,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getContext(boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:666"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:665"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(boolean)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getContext(boolean)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.LoggerContext"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:176,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.LogManager:178,1"
      Dst: "[net.jsign.log4j.Logger].warn(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:179,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean,java.net.URI,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    functionSourceFile: "net.jsign.log4j.util.StackLocatorUtil"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.StackLocatorUtil:45,1"
      Dst: "[net.jsign.log4j.util.StackLocator].getCallerClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: 597
    functionDepth: 3
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    - "[java.lang.Class].getClassLoader()"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:598,1"
      Dst: "[net.jsign.log4j.LogManager].callerClass(java.lang.Class)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.LogManager:599,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getContext(boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:679"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(boolean)"
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.LogManager:680,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:679,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.Logger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:691,1"
      Dst: "[net.jsign.log4j.spi.LoggerContextFactory].getContext(java.lang.String,java.lang.ClassLoader,java.lang.Object,boolean)"
    - Src: "net.jsign.log4j.LogManager:691,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getRootLogger()"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.log4j.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:700,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LogManager].getLogger(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LogManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.log4j.Logger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.LogManager].getContext(boolean)"
    - "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    - "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.LogManager:666"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.LogManager:665"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.LogManager].getContext(boolean)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.spi.LoggerContext].getLogger(java.lang.String)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.util.StackLocatorUtil].getCallerClass(int)"
    - Src: "net.jsign.log4j.LogManager:666,1"
      Dst: "[net.jsign.log4j.LogManager].getLogger(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].<init>(boolean)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap$1"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InheritableThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:57,1"
      Dst: "[java.lang.InheritableThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].childValue(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:61,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:61,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].childValue(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap$1].childValue(java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:57,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].childValue(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].childValue(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap$1:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:61,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:61,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].addOne(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].halfTrace(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].invert(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].reduce17(long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].sqrt(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 83
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].trace(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.json-io.util.io.FastPushbackReader"
    - "java.util.Map"
    - "java.util.Map"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:104,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:55,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:107,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:107,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.FastPushbackReader"
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:115,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].<init>(net.jsign.json-io.util.io.FastPushbackReader,java.util.Map,java.util.Map,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonParser].readString()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    - "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    functionUses: 0
    ICount: 117
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:133"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:147"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:154"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:189"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:158"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:163"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:169"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:172"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:173"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:176"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:177"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:181"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:202"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:202"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:205"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:213"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:216"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:222"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:225"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:226"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:230"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:126"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:122,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:132,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:135,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - Src: "net.jsign.json-io.util.io.JsonParser:136,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - Src: "net.jsign.json-io.util.io.JsonParser:142,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:148,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:156,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:163,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:165,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:167,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:201,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:210,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:215,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:243,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isLogicalPrimitive()"
    - Src: "net.jsign.json-io.util.io.JsonParser:245,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getPrimitiveValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 24
    BBCount: 44
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.JsonParser].readString()"
    - "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    - "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:253"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:262"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:254,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:257,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:260,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:264,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:269,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:270,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readJsonObject()"
    - Src: "net.jsign.json-io.util.io.JsonParser:272,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:278,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readArray(net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.util.List].toArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:306"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:309"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:312"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:315"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:316"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:300,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonParser:305,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readValue(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.JsonParser:308,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:310,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    - Src: "net.jsign.json-io.util.io.JsonParser:318,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:323,1"
      Dst: "[java.util.List].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.lang.Character].toLowerCase(char)"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:339"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:333"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:336"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:334,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.JsonParser:338,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:341,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:343,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    - Src: "net.jsign.json-io.util.io.JsonParser:344,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readNumber(int)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Number"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].isAllowNanAndInfinity()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].appendCodePoint(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:376"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:368"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:377"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:378"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:384"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:383"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:384"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:388"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:387"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:387"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:385"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:388"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:406"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:405"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:413"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:412"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:411"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:416"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:422"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:421"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:429"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:435"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:368,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].isAllowNanAndInfinity()"
    - Src: "net.jsign.json-io.util.io.JsonParser:380,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:385,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].readToken(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:387,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.jsign.json-io.util.io.JsonParser:395,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].unread(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:402,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:403,1"
      Dst: "[java.lang.StringBuilder].appendCodePoint(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:431,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:431,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:435,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:435,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:440,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 34
  - functionName: "[net.jsign.json-io.util.io.JsonParser].readString()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].setLength(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - "[java.lang.StringBuilder].appendCodePoint(int)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:466"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:470"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:471"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:485"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:473"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:476"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:477"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:486"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:525"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:464"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:533"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:531"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:533"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:532"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:535"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:464"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:551"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:548"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:459,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:465,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    - Src: "net.jsign.json-io.util.io.JsonParser:468,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:483,1"
      Dst: "[java.lang.StringBuilder].appendCodePoint(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:522,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonParser:535,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.json-io.util.io.JsonParser:537,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:550,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 25
    BBCount: 37
  - functionName: "[net.jsign.json-io.util.io.JsonParser].skipWhitespaceRead()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonParser:568"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.JsonParser:566"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:567,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:574,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:574,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].error(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:579,1"
      Dst: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:579,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonParser].getMessage(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - "[java.lang.StringBuilder].append(int)"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLine()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getCol()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[net.jsign.json-io.util.io.FastPushbackReader].getLastSnippet()"
    - Src: "net.jsign.json-io.util.io.JsonParser:584,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1VideotexString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1VideotexString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1VideotexString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1VideotexString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1VideotexString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1VideotexString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1VideotexString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VideotexString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo].setMappedPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringBufferReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringBufferReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$StringBufferReader:789,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringBufferReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringBufferReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$StringBufferReader:793"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringBufferReader:797"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$StringBufferReader:799"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringBufferReader:803"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$StringBufferReader:795,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBufferReader:799,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBufferReader:801,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringBufferReader:804,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.crypto.DerivationFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseAgreementSpi].<init>(java.lang.String,net.jsign.bouncycastle.crypto.DerivationFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].doCalcSecret()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].doInitFromKey(java.security.Key,java.security.spec.AlgorithmParameterSpec,java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.security.Key"
    - "java.security.spec.AlgorithmParameterSpec"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPrivate(java.security.Key)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getAgreement(java.lang.String)"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    - "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getUserKeyingMaterial()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getEphemeralPrivateKey()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].engineGetKeyParameters()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getEphemeralPublicKey()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - "[net.jsign.bouncycastle.crypto.params.XDHUPrivateParameters].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.RawAgreement].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.jcajce.spec.UserKeyingMaterialSpec].getUserKeyingMaterial()"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPrivate(java.security.Key)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getAgreement(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getUserKeyingMaterial()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getEphemeralPrivateKey()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].engineGetKeyParameters()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getEphemeralPublicKey()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.XDHUPrivateParameters].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RawAgreement].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.UserKeyingMaterialSpec].getUserKeyingMaterial()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].engineDoPhase(java.security.Key,boolean)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Key"
    argCount: 2
    argTypes:
    - "java.security.Key"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPublic(java.security.Key)"
    - "[net.jsign.bouncycastle.crypto.RawAgreement].getAgreementSize()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getOtherPartyEphemeralKey()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - "[net.jsign.bouncycastle.crypto.params.XDHUPublicParameters].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.RawAgreement].calculateAgreement(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPublic(java.security.Key)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RawAgreement].getAgreementSize()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHUParameterSpec].getOtherPartyEphemeralKey()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.XDHUPublicParameters].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter,net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RawAgreement].calculateAgreement(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getAgreement(java.lang.String)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.RawAgreement"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.bouncycastle.crypto.agreement.X448Agreement].<init>()"
    - "[net.jsign.bouncycastle.crypto.agreement.XDHUnifiedAgreement].<init>(net.jsign.bouncycastle.crypto.RawAgreement)"
    - "[net.jsign.bouncycastle.crypto.agreement.X25519Agreement].<init>()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.X448Agreement].<init>()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.XDHUnifiedAgreement].<init>(net.jsign.bouncycastle.crypto.RawAgreement)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.agreement.X25519Agreement].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPrivate(java.security.Key)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].engineGetKeyParameters()"
    - "[java.security.interfaces.XECPrivateKey].getScalar()"
    - "[java.util.Optional].isPresent()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[java.security.Key].getAlgorithm()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.util.Optional].get()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PrivateKey(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PrivateKey(byte[])"
    - "[java.security.interfaces.XECKey].getParams()"
    - "[java.security.spec.NamedParameterSpec].getName()"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].engineGetKeyParameters()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.interfaces.XECPrivateKey].getScalar()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.util.Optional].isPresent()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.util.Optional].get()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PrivateKey(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PrivateKey(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.interfaces.XECKey].getParams()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.spec.NamedParameterSpec].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getLwXDHKeyPublic(java.security.Key)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - "[java.security.interfaces.XECPublicKey].getU()"
    - "[java.math.BigInteger].signum()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[java.security.Key].getAlgorithm()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PublicKey(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PublicKey(java.math.BigInteger)"
    - "[java.security.interfaces.XECKey].getParams()"
    - "[java.security.spec.NamedParameterSpec].getName()"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey].engineGetKeyParameters()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.interfaces.XECPublicKey].getU()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PublicKey(java.math.BigInteger)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PublicKey(java.math.BigInteger)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.interfaces.XECKey].getParams()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.spec.NamedParameterSpec].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getPublicKeyData(int,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PrivateKey(byte[])"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX25519PublicKey(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getPublicKeyData(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getPublicKeyData(int,java.math.BigInteger)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PrivateKey(byte[])"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getX448PublicKey(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getPublicKeyData(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi].getPublicKeyData(int,java.math.BigInteger)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyAgreementSpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].<init>(net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:35,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].getOriginal()"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.MessageFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.message.Message"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:44,1"
      Dst: "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.message.SimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.SimpleMessage:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:49,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:54,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:59,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:65,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:71,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:77,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:83,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 9
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:89,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:95,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 11
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:101,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:106,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String)"
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String)"
    - "[net.jsign.log4j.message.AbstractMessageFactory].newMessage(java.lang.String)"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:111,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.spi.MessageFactory2Adapter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.StringFormatterMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.spi.MessageFactory2Adapter].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.ParameterizedMessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    functionUses: 7
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.MessageFactory2Adapter:116,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processWord(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "littleEndianToInt(byte[],int)"
        - "processBlock()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    functionUses: 3
    ICount: 539
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "F(int,int,int)"
        - "G(int,int,int)"
        - "K(int,int,int)"
        - "H(int,int,int)"
        - "rotateLeft(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 64
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    functionUses: 3
    ICount: 539
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "F(int,int,int)"
        - "G(int,int,int)"
        - "K(int,int,int)"
        - "H(int,int,int)"
        - "rotateLeft(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToLittleEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 64
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    functionUses: 3
    ICount: 539
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "F(int,int,int)"
        - "G(int,int,int)"
        - "K(int,int,int)"
        - "H(int,int,int)"
        - "rotateLeft(int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].F(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].rotateLeft(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].G(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].H(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].K(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].populateState(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].populateState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 2
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$UUIDReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$UUIDReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$UUIDReader:832,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$UUIDReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$UUIDReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.UUID].fromString(java.lang.String)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.lang.Long].longValue()"
    - "[java.util.UUID].<init>(long,long)"
    - "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$UUIDReader:838"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$UUIDReader:842"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$UUIDReader:845"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$UUIDReader:848"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$UUIDReader:850"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$UUIDReader:854"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:840,1"
      Dst: "[java.util.UUID].fromString(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:844,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:847,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:855,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:855,1"
      Dst: "[java.util.UUID].<init>(long,long)"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:857,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$UUIDReader:858,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.EllipticCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.EllipticCurve].<init>(java.security.spec.ECField,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.ECField"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECAlgorithms"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].getDimension()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField:net.jsign.bouncycastle.math.field.PrimeField].getDimension()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-2"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECAlgorithms:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertField(net.jsign.bouncycastle.math.field.FiniteField)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.ECField"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.field.FiniteField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpField(net.jsign.bouncycastle.math.field.FiniteField)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECFieldFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(int[],int,int)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].reverseInPlace(int[])"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getDegree()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECFieldF2m].<init>(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.security.spec.EllipticCurve"
    - "java.security.spec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.security.spec.EllipticCurve"
    - "java.security.spec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[java.math.BigInteger].intValue()"
    - "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].convertCurve(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].<init>(java.security.spec.EllipticCurve,java.security.spec.ECPoint,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.WeakHashMap].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.WeakHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache].size()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache].clear()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].clear()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.BigIntegers$Cache:-1,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Integers].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].bitCount(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].bitCount(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].bitCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].highestOneBit(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].highestOneBit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].highestOneBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].lowestOneBit(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].lowestOneBit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].lowestOneBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].numberOfLeadingZeros(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].numberOfTrailingZeros(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfTrailingZeros(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfTrailingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].reverse(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].reverse(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].reverse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].reverseBytes(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].reverseBytes(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].rotateLeft(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].rotateLeft(int,int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].rotateLeft(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].rotateRight(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].rotateRight(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].rotateRight(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].<init>(net.jsign.bouncycastle.asn1.DefiniteLengthInputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getBitStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getOctetStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    - Branch String: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs:
        - "read()"
        - "getRemaining()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getPadBits()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 25
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "getLimit()"
        - "readFully(java.io.InputStream,byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 101
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getBitStream(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.io.InputStream].read()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 30
    ICount: 26
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].getBaseGraphicString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 33
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    functionUses: 24
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "toDERObject()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    functionUses: 20
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "toDLObject()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1GraphicString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 10
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-2"
        BranchSideFuncs:
        - "asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    functionUses: 15
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].<init>(net.jsign.bouncycastle.asn1.ASN1GraphicString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.FileFileFilter].<init>()"
    functionSourceFile: "net.jsign.commons.io.filefilter.FileFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.FileFileFilter:89,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.FileFileFilter].accept(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.filefilter.FileFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isFile()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.FileFileFilter:100"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.FileFileFilter:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.filefilter.FileFileFilter:100"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.FileFileFilter:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.FileFileFilter:100,1"
      Dst: "[java.io.File].isFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.filefilter.FileFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.filefilter.FileFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].isRegularFile(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toFileVisitResult(boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.FileFileFilter:112"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.FileFileFilter:111"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.filefilter.FileFileFilter:112"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.FileFileFilter:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.FileFileFilter:112,1"
      Dst: "[java.nio.file.Files].isRegularFile(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.filefilter.FileFileFilter:112,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].toFileVisitResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].hasAlgorithmName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getAlgorithmName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 66
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getId()"
        - "getHashAlgorithm()"
        - "getMaskGenAlgorithm()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.operator.DefaultSignatureNameFinder].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.DefaultSignatureNameFinder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].hasMoreElements()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 41
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-2"
        BranchSideFuncs:
        - "readObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$ECCurveParamsParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger[]"
    - "java.math.BigInteger[]"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getV1A()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getV1B()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getV2A()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getV2B()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getG1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getG2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters].getBits()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PublicPoint:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset(long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicePurpose:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionUses: 6
    ICount: 23
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA384Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$EdDSA].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$EdDSA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$EdDSA:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$13:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$6:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$STOutput].getPrime()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$STOutput].getPrimeSeed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$STOutput].getPrimeGenCounter()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int,net.jsign.bouncycastle.math.Primes$1)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    - "net.jsign.bouncycastle.math.Primes$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.Primes$STOutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$STOutput].<init>(java.math.BigInteger,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecomp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getHolder()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Holder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttrCertValidityPeriod()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getIssuerUniqueID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionUses: 110
    ICount: 31
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "hasValue(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "hasValue(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].add(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].add(java.lang.String,java.security.spec.AlgorithmParameterSpec)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].add(java.lang.String,java.security.spec.AlgorithmParameterSpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].add(java.lang.String,java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].add(java.lang.String,java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].build()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].<init>(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].<init>(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec].<init>(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$000(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$100(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$000(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$100(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$000(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$100(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$000(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder].access$100(net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.spec.CompositeAlgorithmSpec$Builder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OctetString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OctetString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OctetString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OctetString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OctetString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OctetString$1].fromImplicitConstructed(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OctetString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1OctetString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OctetString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1OctetString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 109
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyPositive(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[java.lang.Number].byteValue()"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getMu(int)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].partModReduction(net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m,java.math.BigInteger,byte,byte,byte)"
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ZTauElement,byte,byte)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getMu(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].partModReduction(net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m,java.math.BigInteger,byte,byte,byte)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ZTauElement,byte,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].getMu(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].partModReduction(net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m,java.math.BigInteger,byte,byte,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ZTauElement"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m"
    - "java.math.BigInteger"
    - "byte"
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].getSi()"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].isKoblitz()"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getLucas(byte,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].approximateDivisionByN(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,byte,int,int)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].round(net.jsign.bouncycastle.math.ec.SimpleBigDecimal,net.jsign.bouncycastle.math.ec.SimpleBigDecimal,byte)"
    - "[net.jsign.bouncycastle.math.ec.ZTauElement].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].getSi()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].isKoblitz()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getLucas(byte,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].approximateDivisionByN(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,byte,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].round(net.jsign.bouncycastle.math.ec.SimpleBigDecimal,net.jsign.bouncycastle.math.ec.SimpleBigDecimal,byte)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ZTauElement].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].getLucas(byte,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger[]"
    argCount: 3
    argTypes:
    - "byte"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].negate()"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].approximateDivisionByN(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,byte,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftRight(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].testBit(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].round(net.jsign.bouncycastle.math.ec.SimpleBigDecimal,net.jsign.bouncycastle.math.ec.SimpleBigDecimal,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ZTauElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].getScale()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].round()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].compareTo(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ZTauElement].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].getScale()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].round()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ZTauElement].<init>(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 24
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].getScale()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].round()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].adjustScale(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].floor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].checkScale(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].<init>(java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].subtract(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].add(net.jsign.bouncycastle.math.ec.SimpleBigDecimal)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].compareTo(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.SimpleBigDecimal:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ZTauElement].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ZTauElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ZTauElement:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ZTauElement,byte,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "net.jsign.bouncycastle.math.ec.ZTauElement"
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getTw(byte,int)"
    - "[java.math.BigInteger].intValue()"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].tauAdicWNaf(byte,net.jsign.bouncycastle.math.ec.ZTauElement,int,int,net.jsign.bouncycastle.math.ec.ZTauElement[])"
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getTw(byte,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].tauAdicWNaf(byte,net.jsign.bouncycastle.math.ec.ZTauElement,int,int,net.jsign.bouncycastle.math.ec.ZTauElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].getTw(byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getLucas(byte,int,boolean)"
    - "[java.math.BigInteger].setBit(int)"
    - "[java.math.BigInteger].modInverse(java.math.BigInteger)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getLucas(byte,int,boolean)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].setBit(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].modInverse(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].tauAdicWNaf(byte,net.jsign.bouncycastle.math.ec.ZTauElement,int,int,net.jsign.bouncycastle.math.ec.ZTauElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 5
    argTypes:
    - "byte"
    - "net.jsign.bouncycastle.math.ec.ZTauElement"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.math.ec.ZTauElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].norm(byte,net.jsign.bouncycastle.math.ec.ZTauElement)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].testBit(int)"
    - "[java.math.BigInteger].intValue()"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].shiftRight(int)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].negate()"
    - "[net.jsign.bouncycastle.util.BigIntegers].longValueExact(java.math.BigInteger)"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].norm(byte,net.jsign.bouncycastle.math.ec.ZTauElement)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftRight(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].longValueExact(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 24
  - functionName: "[net.jsign.bouncycastle.math.ec.Tnaf].norm(byte,net.jsign.bouncycastle.math.ec.ZTauElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.Tnaf"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "byte"
    - "net.jsign.bouncycastle.math.ec.ZTauElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - "[java.math.BigInteger].shiftLeft(int)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.Tnaf:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.Tnaf:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].multiply(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].shiftLeft(int)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.Tnaf:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].longValueExact(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].longValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[java.lang.Number].byteValue()"
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    - "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,net.jsign.bouncycastle.math.ec.ZTauElement,byte,byte)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "net.jsign.bouncycastle.math.ec.ZTauElement"
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.Tnaf].getTw(byte,int)"
    - "[java.math.BigInteger].intValue()"
    - "[net.jsign.bouncycastle.math.ec.Tnaf].tauAdicWNaf(byte,net.jsign.bouncycastle.math.ec.ZTauElement,int,int,net.jsign.bouncycastle.math.ec.ZTauElement[])"
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].getTw(byte,int)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.Tnaf].tauAdicWNaf(byte,net.jsign.bouncycastle.math.ec.ZTauElement,int,int,net.jsign.bouncycastle.math.ec.ZTauElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].multiplyFromWTnaf(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[java.lang.Number].byteValue()"
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    - "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m,byte)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].tauPow(int)"
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].getFingerprint()"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 6
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs:
        - "doFinal(byte[],int,int)"
        - "update(byte[],int,int)"
        - "newInstance(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].calculateFingerprint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs:
        - "doFinal(byte[],int,int)"
        - "update(byte[],int,int)"
        - "newInstance(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Xof].doFinal(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA224PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA224Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA224Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].newInstance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].newInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].makeNative()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].makeNative()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset(long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA384PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512_224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    functionUses: 0
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512_224PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512_256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512_256PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_224()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_224PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].checkBitLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.KeccakDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].init(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.KeccakDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_256PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_384()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_384PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_512()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_512PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHAKE128()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "hasEnabledService(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHAKE256()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "hasEnabledService(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].cloneDigest(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory$Cloner].createClone(net.jsign.bouncycastle.crypto.Digest)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory$Cloner].createClone(net.jsign.bouncycastle.crypto.Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].equal(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 135
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].multiplyX(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].multiplyX8(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].one(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].copy(long[],long[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].copy(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].x(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512].zero(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_512"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].half(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 0
    ICount: 177
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 1
    ICount: 59
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemObject:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].<init>(java.lang.String,java.util.List,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.pem.PemObject:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.pem.PemObject:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getType()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getHeaders()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].generate()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.util.io.pem.PemObject"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].getParams()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.spec.AlgorithmParameterSpec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].getPublicKey()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.jcajce.interfaces.XDHPublicKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X448].generatePublicKey(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X448].generatePublicKey(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].generatePublicKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519].generatePublicKey(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519].generatePublicKey(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].getScalar()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Optional"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    - "[java.util.Optional].of(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[java.util.Optional].of(java.lang.Object)"
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].createDefaultMultiplier(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables4kKGCMMultiplier_128].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables16kKGCMMultiplier_512].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables4kKGCMMultiplier_128].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables16kKGCMMultiplier_512].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables4kKGCMMultiplier_128].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables4kKGCMMultiplier_128"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.Tables4kKGCMMultiplier_128:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables16kKGCMMultiplier_512].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables16kKGCMMultiplier_512"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.Tables16kKGCMMultiplier_512:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].createDefaultMultiplier(int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].createDefaultMultiplier(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAAD(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int,long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].init(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAAD(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processBytes(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].calculateMac(byte[],int,int,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].reset()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionUses: 0
    ICount: 104
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int,long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].init(long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAAD(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].processBytes(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BufferedBlockCipher].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].calculateMac(byte[],int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(long[],long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAAD(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].calculateMac(byte[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    - "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].size()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(long[],long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].calculateMac(byte[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    - "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMMultiplier].multiplyH(long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToLittleEndian(long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher].xorWithInput(long[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.KGCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initRef()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initNative(long,boolean,byte[],byte[],byte[])"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initRef()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initNative(long,boolean,byte[],byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initRef()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper].<init>(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initNative(long,boolean,byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initRef()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper].<init>(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVRefWrapper].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADByte(long,byte)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADBytes(long,byte[],int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADBytes(long,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADBytes(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].getBuffer()"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].doFinal(long,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].doFinal(long,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].getBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].doFinal(long,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].clearBuffer()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].clearBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].clearBuffer()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].getBuffer()"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[java.io.ByteArrayOutputStream].reset()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].getBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[java.io.ByteArrayOutputStream].size()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUpdateOutputSize(long,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].size()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUpdateOutputSize(long,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUpdateOutputSize(long,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getOutputSize(long,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].clearBuffer()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].clearBuffer()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].initNative(long,boolean,byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].makeInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].processAADBytes(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].doFinal(long,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getUpdateOutputSize(long,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].test_set_max_dl(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$3].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$3].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].parser()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].parser()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].parser()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Sequence$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].parser()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$3].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Sequence$3].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Sequence$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 101
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$Ed448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].<init>(net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$5:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].<init>(net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].<init>(net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 6
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.Mac"
    - "int"
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 35
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce17(long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 83
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 91
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
        - "implExpand(long[],long[])"
        - "implCompactExt(long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implExpand(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].<init>(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatus].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServiceConstraintsException].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServiceConstraintsException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServiceConstraintsException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionUses: 3
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionUses: 12
    ICount: 21
    EdgeCount: 108
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 111
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    functionUses: 13
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.V2Form)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttCertIssuer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].<init>(net.jsign.bouncycastle.asn1.x509.AttCertIssuer)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttCertIssuer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttCertIssuer].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null:net.jsign.bouncycastle.asn1.ASN1Null].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 58
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].match(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getBaseCertificateID()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionUses: 1
    ICount: 40
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "getSerialNumber()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "getIssuerName()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getSerial()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getBaseCertificateID()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getBaseCertificateID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSerialNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.math.BigInteger].intValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getIssuer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionUses: 3
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateIssuer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.V2Form].getIssuerName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.V2Form"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubject()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubject()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubject()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERGraphicString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGraphicString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString].<init>(byte[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERGraphicString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].<init>(java.util.Enumeration)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Enumeration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 21
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 41
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.OfficeXmlFileException"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.UnsupportedFileFormatException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.OfficeXmlFileException:29,1"
      Dst: "[net.jsign.poi.UnsupportedFileFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].init(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].equal(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].equal(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].equal(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256].multiplyH(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX8(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX8(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.Tables8kKGCMMultiplier_256:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].multiplyX8(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_256"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].getFactor()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].isProvablyComposite()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].isNotPrimePower()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.Primes$MROutput:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.Primes$MROutput:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.Primes$MROutput:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.Primes$MROutput:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].probablyPrime()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].access$100(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeWithFactor(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.Primes$MROutput].provablyCompositeNotPrimePower()"
    functionSourceFile: "net.jsign.bouncycastle.math.Primes$MROutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.Primes$MROutput"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.Primes$MROutput:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes$MROutput].<init>(boolean,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters:net.jsign.bouncycastle.crypto.params.KeyParameter].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initNative(long,boolean,byte[],byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initRef(int)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 88
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getAssociatedText()"
        - "getParameters()"
        - "initRef(int)"
        - "getIV()"
        - "getMacSize()"
        - "initNative(long,boolean,byte[],byte[],byte[],int)"
        - "getReference()"
        - "getKey()"
        - "getNonce()"
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initRef(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initNative(long,boolean,byte[],byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initRef(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initNative(long,boolean,byte[],byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initRef(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM$GCMRefWrapper].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(long,byte)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(long,byte[],int,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "processAADBytes(long,byte[],int,int)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(long,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processByte(long,byte,byte[],int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processByte(long,byte,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processByte(long,byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "long"
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processBytes(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].checkStatus()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].resetKeepMac()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].checkStatus()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].resetKeepMac()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].resetKeepMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getMac()"
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "clone(byte[])"
        - "getReference()"
        - "getMac(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "clone(byte[])"
        - "getReference()"
        - "getMac(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUpdateOutputSize(long,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUpdateOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUpdateOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getOutputSize(long,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getOutputSize(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].resetKeepMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs:
        - "getMac()"
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].checkStatus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].initNative(long,boolean,byte[],byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].makeInstance(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processAADBytes(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processByte(long,byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "long"
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].doFinal(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getUpdateOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getOutputSize(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].getMac(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].setBlocksRemainingDown(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].setBlocksRemainingDown(long,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].setBlocksRemainingDown(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].setBlocksRemainingDown(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].setBlocksRemainingDown(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 30
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "getOctets()"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
        - "getContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "getOctets()"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
        - "getContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getCerts()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.bouncycastle.cms.CMSException:net.jsign.log4j.ThreadContext$EmptyThreadContextStack].getUnderlyingException()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    functionUses: 1
    ICount: 83
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getCerts()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getTimeStampInfo()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSID()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.SignerId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 5
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getCertificates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getCertificates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].size()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 27
    EdgeCount: 122
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Certificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Certificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].init(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getCRLs()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getCRLs()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getCRLs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getCRLs()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getCRLs()"
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCRLs(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCRLs()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCRLs(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCRLs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCRLs(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.CertificateList:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.CertificateList:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.CertificateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509CRLHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].init(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getAttributeCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getAttributeCertificates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getAttributeCertificates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getAttributeCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].getAttributeCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getAttributeCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getAttributeCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].init(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getAcinfo()"
    - Src: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].getExtensions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].validate(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getCertHash()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getIssuerSerial()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.tsp.TSPUtil].validateCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getGenTime()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 115
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getCertHash()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getIssuerSerial()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPUtil].validateCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getGenTime()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].hasAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$2].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentVerifierProvider].getAssociatedCertificate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getHashAlgorithm()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getHashAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getDigestCalculator(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.DigestCalculator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getCertHash()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getCertHash()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getCertHash()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getCertHash()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getCertHash()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getCertHash()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getCertHash()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPValidationException:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].getIssuerSerial()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getIssuerSerial()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getIssuerSerial()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getIssuerSerial()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getIssuerSerial()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getIssuerSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getIssuerSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - Src: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionUses: 12
    ICount: 21
    EdgeCount: 108
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].validateCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getVersionNumber()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getVersionNumber()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getVersionNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getVersionNumber()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getVersionNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getVersionNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.TBSCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CertificateHolder:-2"
        BranchSideFuncs:
        - "getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extension"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].convertValueToObject(net.jsign.bouncycastle.asn1.x509.Extension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getGenTime()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getEndDate()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getStartDate()"
    - "[java.util.Date].before(java.util.Date)"
    - "[java.util.Date].after(java.util.Date)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CertificateHolder:-2"
        BranchSideFuncs:
        - "getEndDate()"
        - "getStartDate()"
        - "getDate()"
    - Branch String: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.X509CertificateHolder:-2"
        BranchSideFuncs:
        - "getEndDate()"
        - "getStartDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getStartDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.util.Date].before(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getEndDate()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[java.util.Date].after(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    functionUses: 2
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].isSignatureValid(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].verify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    functionUses: 2
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "isValidOn(java.util.Date)"
        - "hasAssociatedCertificate()"
        - "<init>(java.lang.String)"
        - "getAssociatedCertificate()"
        - "getSigningTime()"
        - "getDate()"
        - "doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSigningTime()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].hasAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].getAssociatedCertificate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].getDate()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].isValidOn(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSVerifierCertificateNotValidException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].doVerify(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].toCMSSignedData()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1].fromImplicitConstructed(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1Set()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1Set()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine$ECBNativeRef].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(long,byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].makeInstance(int,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 45
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "init(long,byte[])"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "getReference()"
        - "getKey()"
        - "makeInstance(int,boolean)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "init(long,byte[])"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "getReference()"
        - "getKey()"
        - "makeInstance(int,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].makeInstance(int,boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine$ECBNativeRef].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(long,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].makeInstance(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine$ECBNativeRef].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine$ECBNativeRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine$ECBNativeRef:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.Object"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(long,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize(long)"
    functionUses: 13
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 49
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "process(long,byte[],int,int,byte[],int)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getMultiBlockSize(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getMultiBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlocks(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset(long)"
    functionUses: 12
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].process(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].makeInstance(int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(long,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createGCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.modes.GCMModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCM].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCM:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createGCMSIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.modes.GCMSIVModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIV$GCMSIVCache:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.gcm.Tables4kGCMMultiplier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.gcm.GCMMultiplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher,net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$1)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher,net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher,net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$1)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher"
    - "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCMSIVBlockCipher$GCMSIVHasher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCBC()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.modes.CBCModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBC:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 2
    ICount: 17
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCFB(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.modes.CFBModeCipher"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCFB:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultMultiBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCTR()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.modes.CTRModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs:
        - "newInstance()"
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 2
    ICount: 18
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCCM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.modes.CCMModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCCM$ExposedByteArrayOutputStream:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CCMBlockCipher$ExposedByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CCMBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createEAX()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.modes.EAXModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.EAXBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.EAXBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.EAXBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.EAXBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CMac].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].lookupPoly(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CMac:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.macs.CMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.CMac:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.CMac].lookupPoly(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CBCModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCBC()"
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCBC()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "createCBC()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCBC()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CBCBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.macs.CMac].lookupPoly(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.CMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.CMac:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CTRModeCipher"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createCTR()"
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
        - "createCTR()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCTR()"
    - Src: "net.jsign.bouncycastle.crypto.modes.SICBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].createOCB()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.modes.OCBModeCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 11
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeEngine:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].<init>(byte[],int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].<init>(byte[],int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].<init>(byte[],int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].getMacSizeInBits()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].getAssociatedData()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.IvParameterSpec].getIV()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.AEADParameterSpec:-1,1"
      Dst: "[javax.crypto.spec.IvParameterSpec].getIV()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERNull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Null].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERNull:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Null].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERNull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERNull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERNull:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERNull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionUses: 33
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERNull:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isMQV(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isEC(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isGOST(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isRFC2631(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isDES(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].isEquivalent(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[java.util.Set].size()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "net.jsign.bouncycastle.cms.SignerInformation"
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getDigestAlgorithmID()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getDigestAlgorithmID()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 19
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "hasNext()"
        - "getCounterSignatures()"
        - "iterator()"
        - "next()"
        - "getDigestAlgorithmID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getDigestAlgorithmID()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getCounterSignatures()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AttributeCertificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 15
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CRLHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.CertificateList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponse"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 15
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getOthersFromStore(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getInfoFormat()"
        - "getResponseStatus()"
        - "getInfo()"
        - "getInstance(java.lang.Object)"
        - "getIntValue()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].getResponseStatus()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus].getIntValue()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "hasNext()"
        - "<init>()"
        - "next()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "hasNext()"
        - "<init>()"
        - "next()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createDerSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createBEROctetOutputStream(java.io.OutputStream,int,boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.io.OutputStream"
    argCount: 4
    argTypes:
    - "java.io.OutputStream"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].<init>(java.io.OutputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream(byte[])"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].<init>(java.io.OutputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].<init>(java.io.OutputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.OutputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERGenerator].<init>(java.io.OutputStream,int,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERGenerator].writeBERHeader(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERGenerator].<init>(java.io.OutputStream,int,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERGenerator].writeBERHeader(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].<init>(net.jsign.bouncycastle.asn1.BEROctetStringGenerator,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].<init>(net.jsign.bouncycastle.asn1.BEROctetStringGenerator,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].<init>(net.jsign.bouncycastle.asn1.BEROctetStringGenerator,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.BEROctetStringGenerator"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BEROctetStringGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator].getOctetOutputStream(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].readContentInfo(net.jsign.bouncycastle.asn1.ASN1InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].streamToByteArray(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].streamToByteArray(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].readAllLimited(java.io.InputStream,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAllLimited(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAllLimited(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAllLimited(java.io.InputStream,long,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAllLimited(java.io.InputStream,long,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].pipeAllLimited(java.io.InputStream,long,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.StreamOverflowException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.StreamOverflowException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.io.StreamOverflowException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.StreamOverflowException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.StreamOverflowException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].attachDigestsToInputStream(java.util.Collection,java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].<init>(java.io.InputStream,java.io.OutputStream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeInputStream].<init>(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].<init>(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatingOutputStream()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCalculatingOutputStream()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatingOutputStream()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeTeeOutputStream(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeOutputStream(java.io.OutputStream)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "getSafeOutputStream(java.io.OutputStream)"
        - "<init>(java.io.OutputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].encode(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].encode(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].encode(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.encoders.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.EncoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].encode(byte[],java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].encode(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].encode(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].decode(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(byte[],int,int,java.io.OutputStream)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(byte[],int,int,java.io.OutputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].ignore(char)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 68
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].decode(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].decode(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.Windows1252Extended$2].<init>(net.jsign.script.Windows1252Extended,java.nio.charset.Charset,float,float)"
    functionSourceFile: "net.jsign.script.Windows1252Extended$2"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.script.Windows1252Extended"
    - "java.nio.charset.Charset"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.CharsetEncoder].<init>(java.nio.charset.Charset,float,float)"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.Windows1252Extended$2:93,1"
      Dst: "[java.nio.charset.CharsetEncoder].<init>(java.nio.charset.Charset,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.Windows1252Extended$2].encodeLoop(java.nio.CharBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.script.Windows1252Extended$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.CoderResult"
    argCount: 2
    argTypes:
    - "java.nio.CharBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].hasRemaining()"
    - "[java.nio.CharBuffer].get()"
    - "[net.jsign.script.Windows1252Extended].access$100()"
    - "[java.nio.ByteBuffer].put(byte)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.script.Windows1252Extended$2:95"
      Branch Sides:
      - BranchSide: "net.jsign.script.Windows1252Extended$2:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.script.Windows1252Extended$2:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.script.Windows1252Extended$2:97"
      Branch Sides:
      - BranchSide: "net.jsign.script.Windows1252Extended$2:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.script.Windows1252Extended$2:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.script.Windows1252Extended$2:98"
      Branch Sides:
      - BranchSide: "net.jsign.script.Windows1252Extended$2:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.script.Windows1252Extended$2:95,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "net.jsign.script.Windows1252Extended$2:96,1"
      Dst: "[java.nio.CharBuffer].get()"
    - Src: "net.jsign.script.Windows1252Extended$2:98,1"
      Dst: "[net.jsign.script.Windows1252Extended].access$100()"
    - Src: "net.jsign.script.Windows1252Extended$2:98,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.script.Windows1252Extended].access$100()"
    functionSourceFile: "net.jsign.script.Windows1252Extended"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].toBigInteger64(long[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 48
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMulw(long[],long,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMulw(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 48
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMulw(long[],long,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 5
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].halfTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].halfTrace(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hasFastTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].trace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].trace(long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].invert(long[],long[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].invert(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 27
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].sqrt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getRepresentation()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].eq64(long[],long[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve,int,int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy(int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "toHashtable()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toHashtable()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].createStandardAttributeTable(java.util.Map)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.Time].<init>(java.util.Date)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Date].<init>()"
    - "[java.util.Hashtable].contains(java.lang.Object)"
    functionUses: 1
    ICount: 63
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Date].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].<init>(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Time].<init>(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Time:-2"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERGeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERGeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERUTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERUTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getDate()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 61
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].getAttributes(java.util.Map)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].createStandardAttributeTable(java.util.Map)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].createStandardAttributeTable(java.util.Map)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].createStandardAttributeTable(java.util.Map)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.Time].<init>(java.util.Date)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Date].<init>()"
    - "[java.util.Hashtable].contains(java.lang.Object)"
    functionUses: 1
    ICount: 63
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "<init>(java.util.Date)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getAttrType()"
        - "<init>(byte[])"
        - "getInstance(java.lang.Object)"
        - "get(java.lang.Object)"
        - "copyHashTable(java.util.Hashtable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Date].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Time].<init>(java.util.Date)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    - "[java.lang.Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].copyTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].copyHashTable(java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Hashtable"
    argCount: 1
    argTypes:
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-2"
        BranchSideFuncs:
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreType$7].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$7:201,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$7].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.OpenSC].getProvider(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$7:204,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$7:204,1"
      Dst: "[net.jsign.OpenSC].getProvider(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.OpenSC].getProvider(java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    - "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.OpenSC:46,1"
      Dst: "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    - Src: "net.jsign.OpenSC:46,1"
      Dst: "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.OpenSC].getOpenSCLibrary()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.security.ProviderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:57"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:68"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:56,1"
      Dst: "[net.jsign.OpenSC].getOpenSCLibrary()"
    - Src: "net.jsign.OpenSC:57,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.OpenSC:60,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.OpenSC:60,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:64,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.OpenSC:66,1"
      Dst: "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    - Src: "net.jsign.OpenSC:69,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.OpenSC:72,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.OpenSC].getOpenSCLibrary()"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:124"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:126"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:126"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:133"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:139"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:152"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:154"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:121,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.OpenSC:124,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:126,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.OpenSC:126,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.OpenSC:138,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.OpenSC:140,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.OpenSC:154,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 17
  - functionName: "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getAbsolutePath()"
    - "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotInfo(long)"
    - "[java.lang.String].<init>(char[])"
    - "[java.lang.String].trim()"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetTokenInfo(long)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Long].longValue()"
    - "[java.util.List].isEmpty()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:89"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:106"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:105"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:92"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:93"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:92"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:92"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:95"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:106"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:110"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:111"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:113"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:84,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.OpenSC:84,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - Src: "net.jsign.OpenSC:85,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    - Src: "net.jsign.OpenSC:87,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.OpenSC:90,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotInfo(long)"
    - Src: "net.jsign.OpenSC:91,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.OpenSC:91,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.OpenSC:92,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.OpenSC:92,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:93,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetTokenInfo(long)"
    - Src: "net.jsign.OpenSC:95,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.OpenSC:101,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.OpenSC:101,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.OpenSC:106,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.OpenSC:107,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.OpenSC:107,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.OpenSC:110,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    functionSourceFile: "net.jsign.ProviderUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.security.Security].getProvider(java.lang.String)"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ProviderUtils:45"
      Branch Sides:
      - BranchSide: "net.jsign.ProviderUtils:48"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ProviderUtils:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ProviderUtils:43,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.jsign.ProviderUtils:44,1"
      Dst: "[java.security.Security].getProvider(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:46,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:48,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.ProviderUtils:51,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:51,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.jsign.ProviderUtils:52,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat].copy(int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].copy(int,int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.CFBModeCipher"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCFB(int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeBlockCipherProvider].createCFB(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 22
    ICount: 46
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 15
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].calculateByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "encryptByte(byte)"
        - "decryptByte(byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 49
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getCurrentIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 15
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].toString()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 11
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$22:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "<init>(byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].<init>(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[java.io.OutputStream].<init>()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:233,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:234,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:234,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:236,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].createBlockIfNeeded()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 239
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].createBlockIfNeeded(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].createBlockIfNeeded(int)"
    functionUses: 1
    ICount: 55
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:246"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:265"
        BranchSideFuncs:
        - "getFreeBlock()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:264"
        BranchSideFuncs:
        - "claim(int)"
        - "getNextBlock(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:254"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:256"
        BranchSideFuncs:
        - "access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
        - "setNextBlock(int,int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:261"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:269"
        BranchSideFuncs:
        - "access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:269"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:272"
        BranchSideFuncs:
        - "releaseBuffer(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:271"
        BranchSideFuncs:
        - "createBlockIfNeeded(int)"
        - "access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getFreeBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:248,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:255,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:261,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:262,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:266,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:270,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].releaseBuffer(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:272,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].createBlockIfNeeded(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 10
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:108"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 279
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 18
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:281,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].createBlockIfNeeded()"
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 21
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:286"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:286"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:286"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:286"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:286"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:288"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:289"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:293"
        BranchSideFuncs:
        - "createBlockIfNeeded()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:299"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:293"
        BranchSideFuncs:
        - "createBlockIfNeeded()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:288,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:294,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].createBlockIfNeeded()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:295,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:295,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:296,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].createBlockIfNeeded()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 239
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].createBlockIfNeeded(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getFreeBlock()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].releaseBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].createBlockIfNeeded(int)"
    functionUses: 1
    ICount: 55
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:241"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:246"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:265"
        BranchSideFuncs:
        - "getFreeBlock()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:264"
        BranchSideFuncs:
        - "claim(int)"
        - "getNextBlock(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:254"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:256"
        BranchSideFuncs:
        - "access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
        - "setNextBlock(int,int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:261"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:269"
        BranchSideFuncs:
        - "access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:269"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:272"
        BranchSideFuncs:
        - "releaseBuffer(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:271"
        BranchSideFuncs:
        - "createBlockIfNeeded(int)"
        - "access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:240,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getFreeBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:248,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:255,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:261,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$100(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:262,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$102(net.jsign.poi.poifs.filesystem.POIFSStream,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:266,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getNextBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:270,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].releaseBuffer(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:272,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].createBlockIfNeeded(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].access$200(net.jsign.poi.poifs.filesystem.POIFSStream,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    functionUses: 20
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:308"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:311"
        BranchSideFuncs:
        - "setNextBlock(int,int)"
        - "access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:304,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:304,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:305,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$200(net.jsign.poi.poifs.filesystem.POIFSStream,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer:309,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].setNextBlock(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$000(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].access$200(net.jsign.poi.poifs.filesystem.POIFSStream,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:48,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x500.X500Name,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames,net.jsign.bouncycastle.asn1.ASN1Integer)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(int,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].<init>(int,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].<init>(int,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].<init>(net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getDigestedObjectType()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestedObjectType()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getDigestedObjectType()"
        - "getObjectDigestInfo()"
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestedObjectType()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestedObjectType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getDigestAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getObjectDigest()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getObjectDigest()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getObjectDigest()"
        - "getBytes()"
        - "getObjectDigestInfo()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getObjectDigest()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getObjectDigest()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getOtherObjectTypeID()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getOtherObjectTypeID()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getOtherObjectTypeID()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getOtherObjectTypeID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].generateGeneralNames(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].<init>(net.jsign.bouncycastle.asn1.x509.GeneralName)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionUses: 12
    ICount: 21
    EdgeCount: 108
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].areEqual(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x500.X500Name)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 10
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500Name:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500Name:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getEntityNames()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralNames:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].copy(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getPrincipals(net.jsign.bouncycastle.asn1.x509.GeneralName[])"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.GeneralName[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    functionUses: 13
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 111
    ICount: 36
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Holder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Holder:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Holder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].match(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getDigest()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getDigestedObjectType()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getObjectDigest()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getOutputStream()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial:net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].getSerial()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubjectPublicKeyInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    functionUses: 1
    ICount: 61
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getSubject()"
        - "write(byte[])"
        - "getEntityName()"
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getSerialNumber()"
        - "getOutputStream()"
        - "getEncoded()"
        - "hasValue(java.math.BigInteger)"
        - "getBaseCertificateID()"
        - "areEqual(byte[],byte[])"
        - "getSubjectPublicKeyInfo()"
        - "matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
        - "getIssuer()"
        - "getDigestAlgorithm()"
        - "getDigestedObjectType()"
        - "getObjectDigest()"
        - "getObjectDigestInfo()"
        - "getDigest()"
        - "close()"
        - "getSerial()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getDigestedObjectType()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubjectPublicKeyInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getObjectDigest()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getBaseCertificateID()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSerialNumber()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.math.BigInteger].intValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "getValue()"
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getIssuer()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getIssuer()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].matchesDN(net.jsign.bouncycastle.asn1.x500.X500Name,net.jsign.bouncycastle.asn1.x509.GeneralNames)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    - "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "getNames()"
        - "getName()"
        - "getInstance(java.lang.Object)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralNames].getNames()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getTagNo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getName()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getEntityName()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralNames"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubject()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubject()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubject()"
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Holder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getDigestedObjectType()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestedObjectType()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getDigestedObjectType()"
        - "getObjectDigestInfo()"
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getDigestedObjectType()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getSubjectPublicKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubjectPublicKeyInfo()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubjectPublicKeyInfo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Certificate].getSubjectPublicKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Certificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubjectPublicKeyInfo()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Certificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubjectPublicKeyInfo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].getSubjectPublicKeyInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.TBSCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].getObjectDigest()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getObjectDigest()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "getObjectDigest()"
        - "getBytes()"
        - "getObjectDigestInfo()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Holder].getObjectDigestInfo()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].getObjectDigest()"
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-2"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.AttributeCertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].setDigestCalculatorProvider(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cert.AttributeCertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.field.GF2Polynomial].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.field.GF2Polynomial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.field.GF2Polynomial].getDegree()"
    functionSourceFile: "net.jsign.bouncycastle.math.field.GF2Polynomial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.field.GF2Polynomial].getExponentsPresent()"
    functionSourceFile: "net.jsign.bouncycastle.math.field.GF2Polynomial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.field.GF2Polynomial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    functionUses: 7
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.field.GF2Polynomial:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.field.GF2Polynomial:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(int[],int[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.field.GF2Polynomial].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.field.GF2Polynomial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.field.GF2Polynomial:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].createAction()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].bootstrap$()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.util.TriConsumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32:-1,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].<init>()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].<init>()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32].accept(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].lambda$static$0(java.lang.String,java.lang.Object,net.jsign.log4j.util.StringMap)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap$lambda_static_0__32:-1,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].lambda$static$0(java.lang.String,java.lang.Object,net.jsign.log4j.util.StringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].lambda$static$0(java.lang.String,java.lang.Object,net.jsign.log4j.util.StringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "net.jsign.log4j.util.StringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:60,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$29:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$1"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.util.DigestFactory$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$1].createClone(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory$1:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.json-io.util.io.Readers$AtomicLongReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$AtomicLongReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$AtomicLongReader:524,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$AtomicLongReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$AtomicLongReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[java.lang.Number].longValue()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicLongReader:531"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicLongReader:539"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicLongReader:534"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicLongReader:537"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicLongReader:540"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicLongReader:543"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicLongReader:540"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicLongReader:543"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicLongReader:540"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicLongReader:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:529,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:534,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:534,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:538,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:538,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:538,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:542,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicLongReader:544,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers].getValueFromJsonObject(java.lang.Object,java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:548,1"
      Dst: "[net.jsign.json-io.util.io.Readers].getValueFromJsonObject(java.lang.Object,java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].getValueFromJsonObject(java.lang.Object,java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers:550"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:561"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:553"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:558"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:553,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:555,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:559,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:559,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:559,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:559,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:559,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:434,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:435,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:437,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].<init>()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: -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.jsign.mscab.CFHeader:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.mscab.CFHeader].<init>(net.jsign.mscab.CFHeader)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.mscab.CFHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 42
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:118"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:102"
        BranchSideFuncs:
        - "clone()"
      - BranchSide: "net.jsign.mscab.CFHeader:101"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.mscab.CFHeader:118,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].read(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].get()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:122"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:130"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:148"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:161"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:157"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:122,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.mscab.CFHeader:123,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.mscab.CFHeader:125,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CFHeader:125,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CFHeader:126,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFHeader:127,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CFHeader:129,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.mscab.CFHeader:131,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.mscab.CFHeader:139,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.mscab.CFHeader:141,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.mscab.CFHeader:148,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.CFHeader:149,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.mscab.CFHeader:150,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.mscab.CFHeader:159,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.mscab.CFHeader].write(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].put(byte[])"
    functionUses: 1
    ICount: 53
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:178"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.mscab.CFHeader:182"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:165,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFHeader:171,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.mscab.CFHeader:173,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFHeader:178,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    - Src: "net.jsign.mscab.CFHeader:183,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].getHeaderSize()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:189"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:192"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:189,1"
      Dst: "[net.jsign.mscab.CFHeader].isReservePresent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].headerDigestUpdate(java.security.MessageDigest)"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.MessageDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - "[java.security.MessageDigest].update(byte[],int,int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:216"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.mscab.CFHeader:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:197,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.mscab.CFHeader:197,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.mscab.CFHeader:199,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.mscab.CFHeader:205,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.mscab.CFHeader:207,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.mscab.CFHeader:213,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.mscab.CFHeader:214,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    - Src: "net.jsign.mscab.CFHeader:217,1"
      Dst: "[java.security.MessageDigest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.mscab.CFHeader].hasPreviousCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:222"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].hasNextCabinet()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:226"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:225"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].isReservePresent()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:230"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:229"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].hasSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:234"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:233"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.mscab.CFHeader].getSignature()"
    functionSourceFile: "net.jsign.mscab.CFHeader"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 1
    returnType: "net.jsign.mscab.CABSignature"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.mscab.CABSignature].<init>(byte[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.mscab.CFHeader:238"
      Branch Sides:
      - BranchSide: "net.jsign.mscab.CFHeader:237"
        BranchSideFuncs:
        - "<init>(byte[])"
    Callsites:
    - Src: "net.jsign.mscab.CFHeader:238,1"
      Dst: "[net.jsign.mscab.CABSignature].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].<init>(java.io.OutputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 19
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 21
    ICount: 9
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 18
    ICount: 7
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].flush()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].flush()"
    - "[net.jsign.commons.io.output.WriterOutputStream].flush()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].flush()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].flush()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].flush()"
    - "[java.io.OutputStream].flush()"
    functionUses: 6
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.io.OutputStream].close()"
    functionUses: 21
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeOutputStream:-1,1"
      Dst: "[java.io.OutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionValidator].<init>()"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -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.jsign.commons.cli.OptionValidator:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionValidator:48"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:58"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:67"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.OptionValidator:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:69"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:54,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.OptionValidator:56,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.OptionValidator:58,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:67,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.commons.cli.OptionValidator:69,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:86,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isJavaIdentifierPart(char)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:97,1"
      Dst: "[java.lang.Character].isJavaIdentifierPart(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:86,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isJavaIdentifierPart(char)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:97,1"
      Dst: "[java.lang.Character].isJavaIdentifierPart(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getOctetStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedBitStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getBitStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedBitStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getPadBits()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 101
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - Src: "net.jsign.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.BERBitString"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ConstructedBitStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readAll(java.io.InputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].pipeAll(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ConstructedBitStream].getPadBits()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ConstructedBitStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERBitString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERBitString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitString].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].parse(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.openssl.PEMKeyPair"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.openssl.PEMKeyPair].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo,net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPair].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo,net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMKeyPair].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo,net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMKeyPair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMKeyPair:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMParser$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMParser$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMParser$RSAKeyPairParser].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF1Key].<init>(char[],net.jsign.bouncycastle.crypto.CharToByteConverter)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF1Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "net.jsign.bouncycastle.crypto.CharToByteConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF1Key:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF1Key:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF1Key].getPassword()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF1Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF1Key].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF1Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF1Key].getFormat()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF1Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CharToByteConverter].getType()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF1Key:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CharToByteConverter].getType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF1Key].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF1Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CharToByteConverter].convert(char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF1Key:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CharToByteConverter].convert(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].getUpdateOutputSize(int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].getUpdateOutputSize(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CTSBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCModeCipher].getUnderlyingCipher()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    functionUses: 0
    ICount: 113
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCModeCipher].getUnderlyingCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CTSBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 29
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DefaultBufferedBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom].<init>(java.lang.Object[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].<init>(java.security.SecureRandomSpi,java.security.Provider)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom:-1,1"
      Dst: "[java.security.SecureRandom].<init>(java.security.SecureRandomSpi,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.NullOutputStream].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.NullOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.NullOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.NullOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.cms.NullOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.NullOutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.cms.NullOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineTranslateKey(java.security.Key)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Key"
    argCount: 1
    argTypes:
    - "java.security.Key"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.spec.KeySpec"
    argCount: 2
    argTypes:
    - "java.security.Key"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.security.Key].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].getCause()"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.interfaces.XDHPublicKey].getUEncoding()"
    - "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.interfaces.EdDSAPublicKey].getPointEncoding()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.interfaces.XDHPublicKey].getUEncoding()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.interfaces.EdDSAPublicKey].getPointEncoding()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGetKeySpec(java.security.Key,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].encodePrivateKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[java.util.Random].nextInt()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.PrivateKeyInfoFactory].createPrivateKeyInfo(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].parsePrivateKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].modPow(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].generatePublicKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBytes(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].u32(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].getEncoded()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getPaddedBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].parse(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].encodePublicKey(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].isPrivate()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBigNum(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].getBytes()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getNameForParameters(net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuilder].writeBlock(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPublicKeyParameters].getY()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.OpenSSHPublicKeySpec:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePrivate(java.security.spec.KeySpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].parsePrivateKeyBlob(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[java.math.BigInteger].remainder(java.math.BigInteger)"
    functionUses: 0
    ICount: 198
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil].allIntegers(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getPositiveValue()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getParametersObject()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.ECPrivateKey].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].skipBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readU32()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].readPaddedBlock()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].hasRemaining()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PrivateKeyParameters].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPrivateKeyUtil:-1,1"
      Dst: "[java.math.BigInteger].remainder(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 39
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.X509EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(byte[],byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    - "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    - "[java.security.spec.EncodedKeySpec].getEncoded()"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 117
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.X509EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getBytes()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(byte[],byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(byte[],byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.BaseKeyFactorySpi].engineGeneratePublic(java.security.spec.KeySpec)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.RawEncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.security.spec.EncodedKeySpec].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.X25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed448PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].validate(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHBuffer].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.OpenSSHPublicKeyUtil].parsePublicKey(net.jsign.bouncycastle.crypto.util.SSHBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.Ed25519PublicKeyParameters].encode(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC11XDHPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.BC15EdDSAPublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$XDH].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$XDH"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi$XDH:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyFactorySpi].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil].getFixedPointPreCompInfo(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].precompute(net.jsign.bouncycastle.math.ec.ECPoint,java.lang.String,net.jsign.bouncycastle.math.ec.PreCompCallback)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].gcmSpecExists()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].gcmSpecExtractable()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].isGcmSpec(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].isGcmSpec(java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].extractGcmSpec(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.spec.AlgorithmParameterSpec"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getIcvLen()"
    - "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - "[java.lang.Integer].intValue()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getNonce()"
    - "[javax.crypto.spec.GCMParameterSpec].<init>(int,byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getIcvLen()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[javax.crypto.spec.GCMParameterSpec].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getIcvLen()"
    functionSourceFile: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].valueOf(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].extractAeadParameters(net.jsign.bouncycastle.crypto.params.KeyParameter,java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$1].<init>(java.security.spec.AlgorithmParameterSpec,net.jsign.bouncycastle.crypto.params.KeyParameter)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$1].<init>(java.security.spec.AlgorithmParameterSpec,net.jsign.bouncycastle.crypto.params.KeyParameter)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$1].<init>(java.security.spec.AlgorithmParameterSpec,net.jsign.bouncycastle.crypto.params.KeyParameter)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil].extractGcmParameters(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.internal.asn1.cms.GCMParameters"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$2].<init>(java.security.spec.AlgorithmParameterSpec)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$2].<init>(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$2].<init>(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.GcmSpecUtil$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].isUsingInverseFunction()"
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].isUsingInverseFunction()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].isUsingInverseFunction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].encryptBlock(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    - "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toShortArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toByteArray(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toShortArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toByteArray(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.FPEParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.FPEParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].encFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine].decryptBlock(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    - "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    - "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toShortArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toByteArray(short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toShortArray(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.FPEEngine].toByteArray(short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.FPEFF1Engine:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadix()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.FPEParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getRadixConverter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.util.RadixConverter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.FPEParameters].getTweak()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.FPEParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.FPEParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1w(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],short[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "short[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "short[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,short[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decryptFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.fpe.SP80038G"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.util.RadixConverter"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.RadixConverter].getRadix()"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].checkArgs(net.jsign.bouncycastle.crypto.BlockCipher,boolean,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toShort(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].decFF1(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.util.RadixConverter,byte[],int,int,int,short[],short[])"
    - Src: "net.jsign.bouncycastle.crypto.fpe.SP80038G:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.fpe.SP80038G].toByte(short[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$WriterOrigin].<init>(java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractOrigin].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:421,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$WriterOrigin].getOutputStream(java.nio.file.OpenOption[])"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.OutputStream"
    argCount: 1
    argTypes:
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractOriginSupplier].setWriter(java.io.Writer)"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:433,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].builder()"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:433,1"
      Dst: "[net.jsign.commons.io.build.AbstractOriginSupplier].setWriter(java.io.Writer)"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:433,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:433,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:433,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:191,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:141,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:142,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:142,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "net.jsign.commons.io.output.WriterOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getWriter()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getWriter()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 319
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Writer"
    - "java.nio.charset.CharsetDecoder"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    - "[java.io.OutputStream].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.charset.CharsetDecoder].charset()"
    - "[java.nio.CharBuffer].allocate(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:320,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:237,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[java.nio.charset.CharsetDecoder].charset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:321,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:325,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetDecoders"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newDecoder()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.charset.CharsetDecoders:37"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.charset.CharsetDecoders:36"
        BranchSideFuncs:
        - "newDecoder()"
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetDecoders:37,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.charset.CharsetDecoders:37,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream].checkIbmJdkWithBrokenUTF16(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newDecoder()"
    - "[java.nio.charset.Charset].name()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].newDecoder()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.String].length()"
    - "[java.nio.CharBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].compact()"
    - "[java.nio.CharBuffer].rewind()"
    - "[java.nio.CharBuffer].toString()"
    functionUses: 1
    ICount: 43
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:200"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:203"
        BranchSideFuncs:
        - "newDecoder()"
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:210"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:214"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:211"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:210"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream:222"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream:200,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:200,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:204,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:206,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:207,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:208,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:208,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:211,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:212,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:214,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer,java.nio.CharBuffer,boolean)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:216,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:219,1"
      Dst: "[java.nio.ByteBuffer].compact()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:221,1"
      Dst: "[java.nio.CharBuffer].rewind()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream:222,1"
      Dst: "[java.nio.CharBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[net.jsign.commons.io.build.AbstractOrigin$WriterOrigin].getWriter(java.nio.charset.Charset,java.nio.file.OpenOption[])"
    functionSourceFile: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 0
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.nio.charset.Charset"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.build.AbstractOrigin$WriterOrigin:448,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.CloseShieldOutputStream].wrap(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.CloseShieldOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.output.CloseShieldOutputStream"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.CloseShieldOutputStream:41,1"
      Dst: "[net.jsign.commons.io.output.CloseShieldOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.CloseShieldOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.CloseShieldOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ProxyOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.CloseShieldOutputStream:54,1"
      Dst: "[net.jsign.commons.io.output.ProxyOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ProxyOutputStream:43,1"
      Dst: "[java.io.FilterOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.CloseShieldOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.CloseShieldOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ProxyOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.CloseShieldOutputStream:54,1"
      Dst: "[net.jsign.commons.io.output.ProxyOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    functionSourceFile: "net.jsign.commons.io.output.CloseShieldOutputStream"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].<init>()"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:45,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].createDefaultMessageFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:56,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].createDefaultMessageFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].createDefaultMessageFactory()"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.MessageFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].newInstance()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:61,1"
      Dst: "[java.lang.Class].newInstance()"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:63,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].getEntryText()"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].getExitText()"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newEntryMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.message.EntryMessage"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].newEntryMessage(net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:197"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:198"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:197"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:197"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:199"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:198"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:198"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:197"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:199"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:203"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:209"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:208"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:204"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:195,1"
      Dst: "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:198,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:200,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:202,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:205,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:210,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:212,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newEntryMessage(net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:139"
        BranchSideFuncs:
        - "isEmpty(java.lang.CharSequence)"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:140,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newEntryMessage(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.EntryMessage"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:222,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:222,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableMessage].memento()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:227,1"
      Dst: "[net.jsign.log4j.message.ReusableMessage].memento()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage:135,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newEntryMessage(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.EntryMessage"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:222,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:222,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].makeImmutable(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.message.Message"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableMessage].memento()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:227,1"
      Dst: "[net.jsign.log4j.message.ReusableMessage].memento()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    - "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:236"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:239"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:238"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:237"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.message.DefaultFlowMessageFactory:239"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.DefaultFlowMessageFactory:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:234,1"
      Dst: "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:237,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String)"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:239,1"
      Dst: "[net.jsign.log4j.message.MessageFactory].newMessage(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:241,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:139"
        BranchSideFuncs:
        - "isEmpty(java.lang.CharSequence)"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:140,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:246,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:152,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:246,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(net.jsign.log4j.message.EntryMessage)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.EntryMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.EntryMessage)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:256,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.EntryMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.EntryMessage)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.EntryMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.FlowMessage].getMessage()"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:148,1"
      Dst: "[net.jsign.log4j.message.FlowMessage].getMessage()"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:148,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:152,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(java.lang.Object,net.jsign.log4j.message.EntryMessage)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "net.jsign.log4j.message.EntryMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.EntryMessage)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:266,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.EntryMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.EntryMessage)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "net.jsign.log4j.message.EntryMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.FlowMessage].getMessage()"
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:158,1"
      Dst: "[net.jsign.log4j.message.FlowMessage].getMessage()"
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:158,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:162,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory].newExitMessage(java.lang.Object,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.message.ExitMessage"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory:276,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage].<init>(java.lang.String,java.lang.Object,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleExitMessage:162,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 101
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    - "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getExplicitBaseObject()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(java.util.Date)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(java.util.Date,java.util.Locale)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Date"
    - "java.util.Locale"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTCTime].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.Time"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].<init>(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getTime()"
        - "getAdjustedTime()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-2"
        BranchSideFuncs:
        - "getTime()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 2
    ICount: 73
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "calculateGMTOffset(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTOffset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getAdjustedDate()"
        - "getDate()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Time].getTime()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Time].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Time].getTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Time"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Time:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Time:-2"
        BranchSideFuncs:
        - "getTime()"
        - "getAdjustedTime()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].getAdjustedTime()"
    - Src: "net.jsign.bouncycastle.asn1.x509.Time:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.CertIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.CertIOException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.cert.CertIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERT61String].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1T61String].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERT61String].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERT61String].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERT61String].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERT61String].<init>(byte[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERT61String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1T61String].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].<init>(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 5
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1:-1,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1:-1,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].<init>()"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.ServiceLoaderUtil:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.stream.Stream"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:61,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 5
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:77,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 5
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:77,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 4
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    - "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].bootstrap$(java.util.Set)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:84"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:91"
        BranchSideFuncs:
        - "getThreadContextClassLoader()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:90"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:86"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:90"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:91"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:94"
        BranchSideFuncs:
        - "loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:93"
        BranchSideFuncs:
        - "bootstrap$(java.util.Set)"
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:82,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:82,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:83,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:85,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].getThreadContextClassLoader()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:87,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:91,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:92,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:94,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$lambda_loadServices_0__15].bootstrap$(java.util.Set)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].loadClassloaderServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 4
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[net.jsign.log4j.util.ServiceLoaderUtil$ServiceLoaderSpliterator].<init>(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,java.lang.ClassLoader,boolean)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:101,1"
      Dst: "[java.util.stream.StreamSupport].stream(java.util.Spliterator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].callServiceLoader(java.lang.invoke.MethodHandles$Lookup,java.lang.Class,java.lang.ClassLoader,boolean)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "java.lang.Iterable"
    argCount: 4
    argTypes:
    - "java.lang.invoke.MethodHandles$Lookup"
    - "java.lang.Class"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$3].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$1].run()"
    - "[net.jsign.poi.poifs.nio.CleanerUtil$unmapHackImpl__20].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$9].run()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$6].run()"
    - "[net.jsign.bouncycastle.util.Strings$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$3].run()"
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$1].run()"
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$2].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1].run()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$8].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class,java.lang.Class[])"
    - "[java.lang.invoke.MethodHandles$Lookup].findStatic(java.lang.Class,java.lang.String,java.lang.invoke.MethodType)"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class)"
    - "[java.lang.invoke.LambdaMetafactory].metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)"
    - "[java.lang.invoke.CallSite].getTarget()"
    - "[java.lang.invoke.MethodHandle].bindTo(java.lang.Object)"
    - "[java.lang.invoke.MethodHandle].invoke()"
    - "[java.lang.System].getSecurityManager()"
    - "[java.security.PrivilegedAction].run()"
    - "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class)"
    - "[java.lang.invoke.MethodHandle].invoke(java.security.PrivilegedAction)"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 33
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:122"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:126"
        BranchSideFuncs:
        - "run()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.ServiceLoaderUtil:131"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:135"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.ServiceLoaderUtil:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:109,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class,java.lang.Class[])"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:108,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].findStatic(java.lang.Class,java.lang.String,java.lang.invoke.MethodType)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:113,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:110,1"
      Dst: "[java.lang.invoke.LambdaMetafactory].metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:117,1"
      Dst: "[java.lang.invoke.CallSite].getTarget()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:118,1"
      Dst: "[java.lang.invoke.MethodHandle].bindTo(java.lang.Object)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:120,1"
      Dst: "[java.lang.invoke.MethodHandle].invoke()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:122,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:123,1"
      Dst: "[java.security.PrivilegedAction].run()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:126,1"
      Dst: "[java.lang.invoke.MethodType].methodType(java.lang.Class,java.lang.Class)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:127,1"
      Dst: "[java.lang.invoke.MethodHandle].invoke(java.security.PrivilegedAction)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:132,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:132,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:135,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.ServiceLoaderUtil].lambda$loadServices$0(java.util.Set,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.ServiceLoaderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.util.ServiceLoaderUtil:96,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$33:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException$Reason].values()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException$Reason].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason:-1,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException$Reason].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException$Reason:-1,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:110,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:111,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:111,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "net.jsign.commons.io.output.WriterOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getWriter()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getWriter()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:136,1"
      Dst: "[net.jsign.commons.io.output.WriterOutputStream].<init>(java.io.Writer,java.nio.charset.CharsetDecoder,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:141,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:142,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:142,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.lang.String)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:148,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:149,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:149,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setCharsetDecoder(java.nio.charset.CharsetDecoder)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharsetDefault()"
    - "[java.nio.charset.Charset].newDecoder()"
    - "[java.nio.charset.CharsetDecoder].charset()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.WriterOutputStream$Builder:160"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream$Builder:160"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.WriterOutputStream$Builder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:160,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharsetDefault()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:160,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:161,1"
      Dst: "[java.nio.charset.CharsetDecoder].charset()"
    - Src: "net.jsign.commons.io.output.WriterOutputStream$Builder:161,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setCharset(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.WriterOutputStream$Builder].setWriteImmediately(boolean)"
    functionSourceFile: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.output.WriterOutputStream$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.rfc8032.Ed448$PublicPoint:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].subtract(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].subtract(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].normalizeAll(net.jsign.bouncycastle.math.ec.ECPoint[])"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil].getCombSize(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setLookupTable(net.jsign.bouncycastle.math.ec.ECLookupTable)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setOffset(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].setWidth(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointPreCompInfo].getLookupTable()"
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointUtil$1].checkTable(net.jsign.bouncycastle.math.ec.ECLookupTable,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECLookupTable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECLookupTable].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$RSAPublicKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$15].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$15:386,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$15].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$15:389"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$15:392"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$15:391"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$15:392"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$15:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$15:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$15:395"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$15:398"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$15:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$15:389,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$15:390,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$15:390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$15:390,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$15:390,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$15:390,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$15:392,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$15:395,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$15].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    - "[net.jsign.jca.GoogleCloudSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    - "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$15:402,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$15:402,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$15:402,1"
      Dst: "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    - Src: "net.jsign.KeyStoreType$15:402,1"
      Dst: "[net.jsign.jca.GoogleCloudSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    - Src: "net.jsign.KeyStoreType$15:402,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType$lambda_getCertificateStore_0__61].bootstrap$(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:590,1"
      Dst: "[net.jsign.KeyStoreType$lambda_getCertificateStore_0__61].bootstrap$(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.GoogleCloudSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    functionSourceFile: "net.jsign.jca.GoogleCloudSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.function.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.jca.GoogleCloudSigningService$lambda_new_0__168].bootstrap$(java.lang.String)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.GoogleCloudSigningService:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.GoogleCloudSigningService:60,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.GoogleCloudSigningService:74,1"
      Dst: "[net.jsign.jca.GoogleCloudSigningService$lambda_new_0__168].bootstrap$(java.lang.String)"
    - Src: "net.jsign.jca.GoogleCloudSigningService:74,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.RESTClient:46,1"
      Dst: "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServiceJcaProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningService].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[net.jsign.jca.SigningService].getName()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].<init>()"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -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.jsign.commons.cli.PatternOptionBuilder:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].getValueClass(char)"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].isValueCode(char)"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 13
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].parsePattern(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].<init>()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.commons.cli.PatternOptionBuilder].isValueCode(char)"
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.Option].builder(java.lang.String)"
    - "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    - "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    - "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    - "[net.jsign.commons.cli.Option$Builder].build()"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.PatternOptionBuilder].getValueClass(char)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:158"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:192"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:164"
      Branch Sides: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:166"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:168"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:169"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:168"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:188"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:193"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:204"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:196"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:156,1"
      Dst: "[net.jsign.commons.cli.Options].<init>()"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:158,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:160,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:164,1"
      Dst: "[net.jsign.commons.cli.PatternOptionBuilder].isValueCode(char)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:168,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:168,1"
      Dst: "[net.jsign.commons.cli.Option].builder(java.lang.String)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:169,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:170,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:171,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:172,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].build()"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:175,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.PatternOptionBuilder:189,1"
      Dst: "[net.jsign.commons.cli.PatternOptionBuilder].getValueClass(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[net.jsign.commons.cli.Options].<init>()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Options:49,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.commons.cli.Options:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].isValueCode(char)"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.PatternOptionBuilder:132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.PatternOptionBuilder:131"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 13
  - functionName: "[net.jsign.commons.cli.Option].builder(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String,net.jsign.commons.cli.Option$1)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:775,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String,net.jsign.commons.cli.Option$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String,net.jsign.commons.cli.Option$1)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.commons.cli.Option$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:792,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:829,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Option$Builder:830,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionValidator:48"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:58"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:67"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.OptionValidator:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:69"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:54,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.OptionValidator:56,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.OptionValidator:58,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:67,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.commons.cli.OptionValidator:69,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.commons.cli.Option$Builder].hasArg(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option$Builder:985"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:985"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Option$Builder:984"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option$Builder].required(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option$Builder"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option$Builder].build()"
    functionSourceFile: "net.jsign.commons.cli.Option$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.cli.Option"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder,net.jsign.commons.cli.Option$1)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option$Builder:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:1011"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option$Builder:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option$Builder:1011"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option$Builder:1010,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option$Builder:1012,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(net.jsign.commons.cli.Option$Builder,net.jsign.commons.cli.Option$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:203"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:192,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:195,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:201,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.Options:203,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "net.jsign.commons.cli.Options:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Option].getKey()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:179"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].hasLongOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:280"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].getLongOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].isRequired()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.PatternOptionBuilder].getValueClass(char)"
    functionSourceFile: "net.jsign.commons.cli.PatternOptionBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].getUnderlyingDigest()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].copy()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].copy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].xorPad(byte[],int,byte)"
    - "[net.jsign.bouncycastle.crypto.Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Memoable].copy()"
    functionUses: 4
    ICount: 61
    EdgeCount: 164
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "xorPad(byte[],int,byte)"
        - "reset()"
        - "copy()"
        - "getKey()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "xorPad(byte[],int,byte)"
        - "reset()"
        - "copy()"
        - "getKey()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "xorPad(byte[],int,byte)"
        - "reset()"
        - "copy()"
        - "getKey()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "xorPad(byte[],int,byte)"
        - "reset()"
        - "copy()"
        - "getKey()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].xorPad(byte[],int,byte)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Memoable].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].xorPad(byte[],int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.GeneralDigest].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte)"
    functionUses: 1
    ICount: 5
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(byte[],int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].update(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.util.Memoable].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    functionUses: 6
    ICount: 48
    EdgeCount: 176
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "getDigestSize()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
        - "reset(net.jsign.bouncycastle.util.Memoable)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "getDigestSize()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
        - "reset(net.jsign.bouncycastle.util.Memoable)"
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs:
        - "getDigestSize()"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
        - "reset(net.jsign.bouncycastle.util.Memoable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Memoable].reset(net.jsign.bouncycastle.util.Memoable)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Memoable].reset(net.jsign.bouncycastle.util.Memoable)"
    - "[net.jsign.bouncycastle.crypto.Digest].reset()"
    - "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Memoable].reset(net.jsign.bouncycastle.util.Memoable)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].xorPad(byte[],int,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.macs.HMac:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.macs.HMac:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionSourceFile: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.Message"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.DefaultFlowMessageFactory$SimpleEntryMessage:135,1"
      Dst: "[net.jsign.log4j.message.DefaultFlowMessageFactory$AbstractFlowMessage].<init>(java.lang.String,net.jsign.log4j.message.Message)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty:net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 56
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:85"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:93"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:98"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:104"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:77,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:51,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:82,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:91,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:95,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:98,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:101,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:107,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:109,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getPath()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:386"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:391"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:400"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:399"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:391,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:392,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.Entry].isDocumentEntry()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:161"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:166"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:161,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].isDocumentEntry()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:167,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].getSize()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    - "[java.io.InputStream].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DocumentEntry].getSize()"
    functionUses: 1
    ICount: 34
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DocumentInputStream:73"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentInputStream:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentInputStream:75"
        BranchSideFuncs:
        - "getProperty()"
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "getFileSystem()"
        - "getParent()"
        - "getSize()"
        - "getBlockIterator()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:72,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:80,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentEntry].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:87,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:92,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:64"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:68"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:67"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getBlockStoreBlockSize()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:64,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:69,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 637
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 971
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:972,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 939
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:940,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[java.util.Collections].emptyList()"
    - "[java.lang.Iterable].iterator()"
    functionUses: 2
    ICount: 9
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:177"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:176"
        BranchSideFuncs:
        - "iterator()"
        - "getSize()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.lang.Iterable].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:184,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.Entry].isDocumentEntry()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:161"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:166"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:161,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].isDocumentEntry()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:162,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:167,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:182,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:186,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:188,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:190,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.DocumentProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:50,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:51,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:273"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:276"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:271,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:277,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:278,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 646
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:647,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:647,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].changeName(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].changeName(net.jsign.poi.poifs.property.Property,java.lang.String)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:207"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:211"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:205,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:205,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:209,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:210,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].changeName(net.jsign.poi.poifs.property.Property,java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:213,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:214,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:214,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].changeName(net.jsign.poi.poifs.property.Property,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:86"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:81,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:83,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:86,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:95,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:96,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].deleteEntry(net.jsign.poi.poifs.filesystem.EntryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.EntryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].deleteChild(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].remove(net.jsign.poi.poifs.filesystem.EntryNode)"
    - "[java.util.ArrayList].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:236"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:233,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:234,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].deleteChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:238,1"
      Dst: "[java.util.ArrayList].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:239,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:239,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:240,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:243,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].remove(net.jsign.poi.poifs.filesystem.EntryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:246,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].deleteChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property:net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[java.util.List].remove(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:111,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:115,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:115,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].remove(net.jsign.poi.poifs.filesystem.EntryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 865
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.EntryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.property.PropertyTable].removeProperty(net.jsign.poi.poifs.property.Property)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:866"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:872"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "free()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:871"
        BranchSideFuncs:
        - "removeProperty(net.jsign.poi.poifs.property.Property)"
        - "getProperty()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:867,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:867,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:868,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:872,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].removeProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:64"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:68"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:67"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getBlockStoreBlockSize()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:64,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:69,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:159,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:160,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:135,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:136,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free(net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].removeProperty(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:133,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntries()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].iterator()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:268,1"
      Dst: "[java.util.ArrayList].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryNames()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].keySet()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:283,1"
      Dst: "[java.util.Map].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].isEmpty()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].isEmpty()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:295,1"
      Dst: "[java.util.ArrayList].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCount()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:309,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:321,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 332
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:333"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:332"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:333"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:333,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:333,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:351"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:356"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:365"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:352,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:356,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:386"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:391"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:400"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:399"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:391,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:392,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 7
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:87,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:88,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:89,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - "[java.io.BufferedInputStream].mark(int)"
    - "[java.io.BufferedInputStream].reset()"
    - "[java.util.Arrays].fill(byte[],byte)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Math].toIntExact(long)"
    functionUses: 2
    ICount: 69
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:130"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:129"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
        - "getBlockStoreBlockSize()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:151"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:134"
        BranchSideFuncs:
        - "getOutputStream()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:121,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:122,1"
      Dst: "[java.io.BufferedInputStream].mark(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:125,1"
      Dst: "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:128,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:131,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:135,1"
      Dst: "[java.io.BufferedInputStream].reset()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:140,1"
      Dst: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:147,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:148,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:150,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:152,1"
      Dst: "[java.lang.Math].toIntExact(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 521
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream].read(byte[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:522"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:525"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:524"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:525"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:529"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:528"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:531"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:538"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:534"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:537"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:536"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:539"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:542"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:523,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.IOUtils:523,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:523,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.poi.util.IOUtils:523,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.IOUtils:523,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:533,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.poi.util.IOUtils:533,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 637
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 971
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:972,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:124"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 391
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream,long)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:392,1"
      Dst: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream,long)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:411"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:412"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:419"
        BranchSideFuncs:
        - "read(byte[],int,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:418"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:414"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:419"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:418"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:419"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:420"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:419"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:419"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:410"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:411,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.poi.util.IOUtils:413,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.poi.util.IOUtils:415,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 545
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:546,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - Src: "net.jsign.poi.util.IOUtils:548,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 553
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:554"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:557"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:556"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:557"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:560"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.util.IOUtils:559"
        BranchSideFuncs:
        - "checkLength(long,int)"
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.IOUtils:555,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:560,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:32,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:276"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:280"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:279"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:277"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:280"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:283"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:278,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:600,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.poi.util.IOUtils:600,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.IOUtils:596,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.poi.util.IOUtils:596,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:131"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:131"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:129,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:40,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:42,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:43,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:44,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:45,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:182,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:186,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:188,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:190,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.poi.poifs.filesystem.POIFSWriterListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.filesystem.POIFSWriterListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].<init>(net.jsign.poi.poifs.filesystem.POIFSDocument,long)"
    - "[java.lang.String].split(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSWriterEvent].<init>(net.jsign.poi.poifs.filesystem.DocumentOutputStream,net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSWriterListener].processPOIFSWriterEvent(net.jsign.poi.poifs.filesystem.POIFSWriterEvent)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:96"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:93,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:97,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:97,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:98,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:101,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:104,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:105,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:106,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].<init>(net.jsign.poi.poifs.filesystem.POIFSDocument,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:109,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:109,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:110,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:110,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:111,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSWriterEvent].<init>(net.jsign.poi.poifs.filesystem.DocumentOutputStream,net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:112,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSWriterListener].processPOIFSWriterEvent(net.jsign.poi.poifs.filesystem.POIFSWriterEvent)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:113,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:108,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 637
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 971
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:972,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:40,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:42,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:43,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:44,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:45,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].<init>(net.jsign.poi.poifs.filesystem.POIFSDocument,long)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:86,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:46,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:46,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:46,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:159,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:160,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.DocumentProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSWriterEvent].<init>(net.jsign.poi.poifs.filesystem.DocumentOutputStream,net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSWriterEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentOutputStream"
    - "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSWriterEvent:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentOutputStream"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[java.io.OutputStream].close()"
    functionUses: 20
    ICount: 19
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:152"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:158"
        BranchSideFuncs:
        - "updateSize(int)"
        - "getStartBlock()"
        - "setStartBlock(int)"
        - "close()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:154,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:154,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:159,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:160,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:161,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentOutputStream:161,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toInputStream()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$lambda_toInputStream_1__5].bootstrap$()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:190,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:188,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:189,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:191,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - "[java.io.BufferedInputStream].mark(int)"
    - "[java.io.BufferedInputStream].reset()"
    - "[java.util.Arrays].fill(byte[],byte)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Math].toIntExact(long)"
    functionUses: 2
    ICount: 69
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:130"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:129"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
        - "getBlockStoreBlockSize()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:151"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:134"
        BranchSideFuncs:
        - "getOutputStream()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:121,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:122,1"
      Dst: "[java.io.BufferedInputStream].mark(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:125,1"
      Dst: "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:128,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:131,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:135,1"
      Dst: "[java.io.BufferedInputStream].reset()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:140,1"
      Dst: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:147,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:148,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:150,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:152,1"
      Dst: "[java.lang.Math].toIntExact(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.DocumentProperty"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DocumentProperty:117,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:182,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:185,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:186,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:188,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:189,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:190,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDirectory(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryEntry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:460,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:462,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:463,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:465,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:465,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:466,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:467,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:468,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:49,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:40,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:50,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:51,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:52,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:53,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:54,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty:net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 56
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:85"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:93"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:98"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:104"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:77,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:51,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:82,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:91,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:95,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:98,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:101,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:107,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:109,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - "[java.lang.Object].<init>()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 1
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:88"
        BranchSideFuncs:
        - "bootstrap$()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$isNull__28].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_0__26].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:85,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:86,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].concat(java.util.stream.Stream,java.util.stream.Stream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath:89,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:238,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:50,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentNode:51,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].getDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:656,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:273"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:276"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:271,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:277,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:278,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 487
    functionDepth: 8
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:488"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:491"
        BranchSideFuncs:
        - "createDocument(java.lang.String,java.io.InputStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:490"
        BranchSideFuncs:
        - "getEntryCaseInsensitive(java.lang.String)"
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
        - "replaceContents(java.io.InputStream)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:488,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:489,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:491,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:492,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:493,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 332
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:333"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:332"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:333"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:333,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:333,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 7
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:386"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:389"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:391"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:393"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:395"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:400"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:399"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:387,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:391,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:392,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:401,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:64"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:68"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:67"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getBlockStoreBlockSize()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:64,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:69,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:188,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:189,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:191,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getStorageClsid()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.poi.hpsf.ClassID"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:506,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:506,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].setStorageClsid(net.jsign.poi.hpsf.ClassID)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.hpsf.ClassID"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.Property].setStorageClsid(net.jsign.poi.hpsf.ClassID)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:517,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:517,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStorageClsid(net.jsign.poi.hpsf.ClassID)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].isDirectoryEntry()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].isDeleteOK()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 550
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].isEmpty()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:551,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].isEmpty()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].isEmpty()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:295,1"
      Dst: "[java.util.ArrayList].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:579,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:581,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:581,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:582,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:583,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getShortDescription()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:610,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntries()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:618,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntries()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].iterator()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:268,1"
      Dst: "[java.util.ArrayList].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].spliterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Spliterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].spliterator()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:628,1"
      Dst: "[java.util.ArrayList].spliterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LoggingException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.LoggingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LoggingException:35,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LoggingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.LoggingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LoggingException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.LoggingException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.LoggingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.LoggingException:54,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getDigestParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getEncryptionParamSet()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "hasEnabledService(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-2"
        BranchSideFuncs:
        - "makeNative(int)"
        - "cryptoServiceProperties()"
        - "hasEnabledService(java.lang.String)"
        - "reset()"
        - "<init>(long)"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].makeNative(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].reset()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].checkBitLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigestXof"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[],net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doOutput(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs:
        - "absorbBits(int,int)"
        - "squeeze(byte[],int,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].doFinal(byte[],int,int,byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorb(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].absorbBits(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].squeeze(byte[],int,long)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 2
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHAKEDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].<init>(net.jsign.bouncycastle.crypto.digests.KeccakDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKEDigest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays$Iterator].<init>(java.lang.Object[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays$Iterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays$Iterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 70
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays$Iterator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays$Iterator:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays$Iterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 86
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays$Iterator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays$Iterator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays$Iterator].remove()"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays$Iterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays$Iterator:-1,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(byte[],boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].<init>()"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerRegistry].<init>()"
    - "[net.jsign.log4j.util.PropertiesUtil].<init>(java.lang.String)"
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String,java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.io.FileOutputStream].<init>(java.lang.String)"
    - "[java.io.PrintStream].<init>(java.io.OutputStream)"
    functionUses: 1
    ICount: 54
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.log4j.simple.SimpleLoggerContext:88"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:78"
        BranchSideFuncs:
        - "getStringProperty(java.lang.String,java.lang.String)"
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:77"
        BranchSideFuncs:
        - "getBooleanProperty(java.lang.String,boolean)"
        - "toLevel(java.lang.String,net.jsign.log4j.Level)"
        - "<init>(java.lang.String)"
        - "getStringProperty(java.lang.String)"
    - Branch String: "net.jsign.log4j.simple.SimpleLoggerContext:93"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:95"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:94"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.simple.SimpleLoggerContext:95"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:99"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:73,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].<init>()"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:79,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:81,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:85,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:86,1"
      Dst: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:88,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:93,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:99,1"
      Dst: "[java.io.FileOutputStream].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:99,1"
      Dst: "[java.io.PrintStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].getExternalContext()"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].getLogger(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 7
    returnType: "net.jsign.log4j.spi.ExtendedLogger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.simple.SimpleLoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:114,1"
      Dst: "[net.jsign.log4j.simple.SimpleLoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 6
    returnType: "net.jsign.log4j.spi.ExtendedLogger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerRegistry].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.spi.AbstractLogger].checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.simple.SimpleLogger].<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    - "[net.jsign.log4j.spi.LoggerRegistry].putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.simple.SimpleLoggerContext:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:125"
        BranchSideFuncs:
        - "checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:124"
        BranchSideFuncs:
        - "putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
        - "getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
        - "<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:120,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:122,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:125,1"
      Dst: "[net.jsign.log4j.simple.SimpleLogger].<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:127,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.ExtendedLogger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerRegistry].factoryKey(net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.log4j.spi.LoggerRegistry].getOrCreateInnerMap(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry:125,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].factoryKey(net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:125,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].getOrCreateInnerMap(java.lang.String)"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:125,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry].factoryKey(net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.LoggerRegistry:105"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.LoggerRegistry:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry:105,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:105,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry].getOrCreateInnerMap(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.log4j.spi.LoggerRegistry$ConcurrentMapFactory].createInnerMap()"
    - "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].createInnerMap()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.log4j.spi.LoggerRegistry$MapFactory].createInnerMap()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.LoggerRegistry:141"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.LoggerRegistry:145"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "createInnerMap()"
      - BranchSide: "net.jsign.log4j.spi.LoggerRegistry:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry:140,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:142,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry$MapFactory].createInnerMap()"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:143,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.simple.SimpleLogger].<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLogger"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 5
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Level"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    - "net.jsign.log4j.util.PropertiesUtil"
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger].<init>(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    functionUses: 2
    ICount: 52
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.simple.SimpleLogger:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:65"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:64"
        BranchSideFuncs:
        - "toLevel(java.lang.String,net.jsign.log4j.Level)"
        - "<init>(java.lang.String,net.jsign.log4j.message.MessageFactory)"
        - "getStringProperty(java.lang.String)"
    - Branch String: "net.jsign.log4j.simple.SimpleLogger:70"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:72"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.simple.SimpleLogger:70"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:72"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.simple.SimpleLogger:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.simple.SimpleLogger:84"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.simple.SimpleLogger:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLogger:65,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].<init>(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:66,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.simple.SimpleLogger:66,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:66,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.simple.SimpleLogger:66,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:67,1"
      Dst: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:69,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:70,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.simple.SimpleLogger:71,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.log4j.simple.SimpleLogger:87,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:396,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment].access$200(net.jsign.log4j.util.PropertiesUtil$Environment,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 315
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:319"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    - Branch String: "net.jsign.log4j.Level:320"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:304,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry].putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    - "net.jsign.log4j.spi.ExtendedLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerRegistry].factoryKey(net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.spi.LoggerRegistry].getOrCreateInnerMap(java.lang.String)"
    - "[net.jsign.log4j.spi.LoggerRegistry$ConcurrentMapFactory].putIfAbsent(java.util.Map,java.lang.String,net.jsign.log4j.spi.ExtendedLogger)"
    - "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].putIfAbsent(java.util.Map,java.lang.String,net.jsign.log4j.spi.ExtendedLogger)"
    - "[net.jsign.log4j.spi.LoggerRegistry$MapFactory].putIfAbsent(java.util.Map,java.lang.String,net.jsign.log4j.spi.ExtendedLogger)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry:180,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].factoryKey(net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:180,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].getOrCreateInnerMap(java.lang.String)"
    - Src: "net.jsign.log4j.spi.LoggerRegistry:180,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry$MapFactory].putIfAbsent(java.util.Map,java.lang.String,net.jsign.log4j.spi.ExtendedLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 6
    returnType: "net.jsign.log4j.spi.ExtendedLogger"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.LoggerRegistry].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.spi.AbstractLogger].checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
    - "[net.jsign.log4j.simple.SimpleLogger].<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    - "[net.jsign.log4j.spi.LoggerRegistry].putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.simple.SimpleLoggerContext:121"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:125"
        BranchSideFuncs:
        - "checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
      - BranchSide: "net.jsign.log4j.simple.SimpleLoggerContext:124"
        BranchSideFuncs:
        - "putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
        - "getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
        - "<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    Callsites:
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:120,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].getLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:122,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].checkMessageFactory(net.jsign.log4j.spi.ExtendedLogger,net.jsign.log4j.message.MessageFactory)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:125,1"
      Dst: "[net.jsign.log4j.simple.SimpleLogger].<init>(java.lang.String,net.jsign.log4j.Level,boolean,boolean,boolean,boolean,java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.util.PropertiesUtil,java.io.PrintStream)"
    - Src: "net.jsign.log4j.simple.SimpleLoggerContext:127,1"
      Dst: "[net.jsign.log4j.spi.LoggerRegistry].putIfAbsent(java.lang.String,net.jsign.log4j.message.MessageFactory,net.jsign.log4j.spi.ExtendedLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].getLoggerRegistry()"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.LoggerRegistry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].hasLogger(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].hasLogger(java.lang.String,java.lang.Class)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.simple.SimpleLoggerContext].hasLogger(java.lang.String,net.jsign.log4j.message.MessageFactory)"
    functionSourceFile: "net.jsign.log4j.simple.SimpleLoggerContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.message.MessageFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].modulus()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeEntropySource].modulus()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].isNativeAvailable()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.NativeEntropySource].modulus()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].addSBox(java.lang.String,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].generateWorkingKey(boolean,byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    - "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getSBox()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 48
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getSBox()"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "generateWorkingKey(boolean,byte[])"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getSBox()"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "generateWorkingKey(boolean,byte[])"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getSBox()"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "generateWorkingKey(boolean,byte[])"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getSBox()"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "generateWorkingKey(boolean,byte[])"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getSBox()"
        - "checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
        - "getAlgorithmName()"
        - "getPurpose(boolean)"
        - "<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
        - "clone(byte[])"
        - "generateWorkingKey(boolean,byte[])"
        - "getKey()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getSBox()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].generateWorkingKey(boolean,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getSBox()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].generateWorkingKey(boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "bytesToint(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.Utils].getPurpose(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.Utils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.Utils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int,java.lang.Object,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.Object"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147Func(int[],byte[],int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 49
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147Func(int[],byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147Func(int[],byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147Func(int[],byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147Func(int[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147Func(int[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    functionUses: 1
    ICount: 68
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 24
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 71
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].generateWorkingKey(boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "bytesToint(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 71
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147Func(int[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    functionUses: 1
    ICount: 68
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs:
        - "GOST28147_mainStep(int,int)"
        - "intTobytes(int,byte[],int)"
        - "bytesToint(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].GOST28147_mainStep(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 24
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].bytesToint(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].intTobytes(int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBoxName(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].keys()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock].<init>(net.jsign.bouncycastle.cert.X509CertificateHolder,net.jsign.bouncycastle.openssl.CertificateTrustBlock)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    - "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toASN1Sequence()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toASN1Sequence()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.X509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.CertificateTrustBlock].toASN1Sequence()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERUTF8String].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.CertificateTrustBlock:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock].getCertificateHolder()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cert.X509CertificateHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock].getTrustBlock()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.X509TrustedCertificateBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.openssl.CertificateTrustBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultSignatureAlgorithmIdentifierFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper].<init>(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].setProvider(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>(net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].setSignatureAlgorithmNameGenerator(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].setSignatureAlgorithmFinder(net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].convertCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].convertCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].convertCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.X509Certificate"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCertificateFactory(java.lang.String)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCertificateFactory(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getEncoded()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[java.security.cert.Certificate].getEncoded()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator"
    - "net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder"
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.cert.X509Certificate)"
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.cert.X509Certificate)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].<init>(net.jsign.bouncycastle.jcajce.util.JcaJceHelper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder].build(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentVerifierProviderBuilder,net.jsign.bouncycastle.cert.X509CertificateHolder,java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator"
    - "net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder"
    - "net.jsign.bouncycastle.operator.ContentVerifierProvider"
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationVerifier:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$NamedHelper].createContentVerifierProvider(java.security.PublicKey)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.PublicKey)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$ProviderHelper].createContentVerifierProvider(java.security.PublicKey)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder$Helper].createContentVerifierProvider(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationVerifier].<init>(net.jsign.bouncycastle.cms.CMSSignatureAlgorithmNameGenerator,net.jsign.bouncycastle.operator.SignatureAlgorithmIdentifierFinder,net.jsign.bouncycastle.operator.ContentVerifierProvider,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].bootstrap$(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Consumer"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].<init>(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40:-1,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].<init>(java.util.Set)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil$Environment$addAll__40:-1,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].half(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.SafeNetEToken].<init>()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -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.jsign.SafeNetEToken:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SafeNetEToken].getProvider()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SafeNetEToken].getSunPKCS11Configuration()"
    - "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:43,1"
      Dst: "[net.jsign.SafeNetEToken].getSunPKCS11Configuration()"
    - Src: "net.jsign.SafeNetEToken:43,1"
      Dst: "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SafeNetEToken].getSunPKCS11Configuration()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SafeNetEToken].getPKCS11Library()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.security.ProviderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:53"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:56"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:55"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:59"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:52,1"
      Dst: "[net.jsign.SafeNetEToken].getPKCS11Library()"
    - Src: "net.jsign.SafeNetEToken:53,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:56,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.SafeNetEToken:56,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "net.jsign.SafeNetEToken:58,1"
      Dst: "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    - Src: "net.jsign.SafeNetEToken:60,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.SafeNetEToken:63,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.SafeNetEToken].getPKCS11Library()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:84"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:87"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:93"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:98"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:97"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:103"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:105"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:108"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:81,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:84,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.SafeNetEToken:93,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.SafeNetEToken:105,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getAbsolutePath()"
    - "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:74"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:72,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.SafeNetEToken:72,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - Src: "net.jsign.SafeNetEToken:73,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    functionSourceFile: "net.jsign.ProviderUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.security.Security].getProvider(java.lang.String)"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.ProviderUtils:45"
      Branch Sides:
      - BranchSide: "net.jsign.ProviderUtils:48"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.ProviderUtils:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.ProviderUtils:43,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.jsign.ProviderUtils:44,1"
      Dst: "[java.security.Security].getProvider(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:46,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:48,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.ProviderUtils:51,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:51,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.jsign.ProviderUtils:52,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.ProviderUtils:55,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.SafeNetEToken].getSunPKCS11Configuration()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SafeNetEToken].getPKCS11Library()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.security.ProviderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:53"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:56"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:55"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:59"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:52,1"
      Dst: "[net.jsign.SafeNetEToken].getPKCS11Library()"
    - Src: "net.jsign.SafeNetEToken:53,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SafeNetEToken:54,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:56,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.SafeNetEToken:56,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "net.jsign.SafeNetEToken:58,1"
      Dst: "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    - Src: "net.jsign.SafeNetEToken:60,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.SafeNetEToken:63,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.SafeNetEToken].getTokenSlot(java.io.File)"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getAbsolutePath()"
    - "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:74"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:72,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.SafeNetEToken:72,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - Src: "net.jsign.SafeNetEToken:73,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.SafeNetEToken].getPKCS11Library()"
    functionSourceFile: "net.jsign.SafeNetEToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SafeNetEToken:84"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:87"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:92"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:93"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:98"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:97"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:103"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SafeNetEToken:105"
      Branch Sides:
      - BranchSide: "net.jsign.SafeNetEToken:108"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SafeNetEToken:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SafeNetEToken:81,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:84,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SafeNetEToken:85,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.SafeNetEToken:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.SafeNetEToken:93,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.SafeNetEToken:103,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.SafeNetEToken:105,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subWordFrom(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addWordTo(int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "mulWordsAdd(int,int,int[],int)"
        - "gte(int[],int[])"
        - "addWordTo(int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulWordsAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addWordTo(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 70
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X448Field].create()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X448Field].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed448$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed448$PointProjective].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getDefaultMParam(int)"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int,java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DHValidationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 34
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "isOverrideSet(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].isOverrideSet(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.DHValidationParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 5
    ICount: 28
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DHParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DHParameters:-2"
        BranchSideFuncs:
        - "getP()"
        - "getQ()"
        - "getG()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.params.DHParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DHParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuffer].<init>(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].length()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[java.lang.StringBuffer].setLength(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 113
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].setLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 21
    BBCount: 39
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].rDNsFromString(java.lang.String,net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].build()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].build()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.NullPointerException].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Vector].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.util.Vector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],java.lang.String[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - "[java.lang.String].trim()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuffer].<init>(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].length()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[java.lang.StringBuffer].setLength(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 113
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].isHexDigit(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].setLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 21
    BBCount: 39
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].stringToValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].stringToValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "java.util.Vector"
    - "java.util.Vector"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - "[java.lang.String].trim()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],java.lang.String[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].stringToValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].stringToValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].<init>(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].build()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x500.X500Name"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.RDN[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500NameBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.RDN[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.RDN[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.RDN[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.Object].clone()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 4
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addMultiValuedRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],java.lang.String[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addMultiValuedRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDN(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "net.jsign.bouncycastle.asn1.x500.X500NameBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - "[java.lang.String].trim()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].addRDN(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].collectAttributeTypeAndValue(net.jsign.bouncycastle.asn1.x500.X500NameStyle,java.util.Vector,java.util.Vector,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    - "java.util.Vector"
    - "java.util.Vector"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - "[java.lang.String].trim()"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameStyle].attrNameToOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].unescape(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].nextToken(net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toValueArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].toOIDArray(java.util.Vector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].findAttrNamesForOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeAttrName(java.lang.String,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].tryFromID(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].tryFromID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionUses: 272
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].checkContentsLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].tryFromID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].isValidIdentifier(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidIdentifier(java.lang.String,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 38
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "isValidIdentifier(java.lang.String,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidIdentifier(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseIdentifier(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    - "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,long)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 1
    ICount: 36
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "nextToken()"
        - "<init>(java.lang.String)"
        - "writeField(java.io.ByteArrayOutputStream,long)"
        - "writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
        - "hasMoreTokens()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].writeField(java.io.ByteArrayOutputStream,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.OIDTokenizer].hasMoreTokens()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueFromHexString(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].convertHex(char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.bouncycastle.asn1.x500.RDN"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getFirst()"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].isMultiValued()"
    - "[java.lang.StringBuffer].append(char)"
    functionUses: 1
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].isMultiValued()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getFirst()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].isMultiValued()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    functionUses: 2
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getId()"
        - "getType()"
        - "getValue()"
        - "valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 2
    ICount: 71
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].getFirst()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 6
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    functionUses: 2
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getId()"
        - "getType()"
        - "getValue()"
        - "valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 2
    ICount: 71
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 2
    ICount: 71
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getEncoded(java.lang.String)"
        - "toASN1Primitive()"
        - "getString()"
        - "toHexString(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].toHexString(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].insert(int,char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 14
    BBCount: 25
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].getString()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].getString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].getString()"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "stripInternalSpaces(java.lang.String)"
        - "decodeObject(java.lang.String)"
        - "getString()"
        - "toLowerCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1String].getString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeObject(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].stripInternalSpaces(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].rDNAreEqual(net.jsign.bouncycastle.asn1.x500.RDN,net.jsign.bouncycastle.asn1.x500.RDN)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.RDN"
    - "net.jsign.bouncycastle.asn1.x500.RDN"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].size()"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.RDN"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.RDN:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.RDN:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.RDN:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].valueToString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalize(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].atvAreEqual(net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    - "net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getType()"
        - "getValue()"
        - "canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getType()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].canonicalString(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].<init>(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].readObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[java.io.InputStream].read()"
    functionUses: 2
    ICount: 7
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "read()"
        - "implParseObject(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.DLExternal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 3
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    functionUses: 101
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.DLExternal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 3
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.DLExternal"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1StreamParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObjectParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].getLoadedObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[java.io.InputStream].read()"
    - "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 9
    ICount: 24
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "read()"
        - "<init>()"
        - "implParseObject(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getLoadedObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].implParseObject(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.InMemoryRepresentable].getLoadedObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1StreamParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DLExternal].<init>(net.jsign.bouncycastle.asn1.DLSequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DLExternal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DLSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DLExternal:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1External].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Exception"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Exception:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader$MapFactory].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader$MapFactory"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.JsonReader$MapFactory:293,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader$MapFactory].newInstance(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader$MapFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader$MapFactory:301"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$MapFactory:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader$MapFactory:305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader$MapFactory:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:301,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:303,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:307,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:309,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:309,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:309,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonReader$MapFactory:309,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$6].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$6:178,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$6].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$6:181"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$6:184"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$6:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$6:181,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$6:182,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$6:182,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$6:182,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$6:182,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$6:182,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$6].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    - "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    - "[net.jsign.jca.OpenPGPCardSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    - "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$6:189"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$6:189"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$6:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.jca.OpenPGPCardSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    - Src: "net.jsign.KeyStoreType$6:189,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    - Src: "net.jsign.KeyStoreType$6:191,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCardSigningService].<init>(java.lang.String,java.lang.String,java.util.function.Function)"
    functionSourceFile: "net.jsign.jca.OpenPGPCardSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.function.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    - "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - "[net.jsign.jca.SmartCard].verify(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCardSigningService:64"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCardSigningService:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.OpenPGPCardSigningService:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCardSigningService:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.OpenPGPCardSigningService:63,1"
      Dst: "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCardSigningService:65,1"
      Dst: "[javax.smartcardio.CardException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCardSigningService:70,1"
      Dst: "[net.jsign.jca.SmartCard].verify(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.OpenPGPCard].getCard(java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.jca.OpenPGPCard"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.OpenPGPCard:326"
      Branch Sides:
      - BranchSide: "net.jsign.jca.OpenPGPCard:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard:323,1"
      Dst: "[net.jsign.jca.OpenPGPCard].killSmartCardDaemon()"
    - Src: "net.jsign.jca.OpenPGPCard:325,1"
      Dst: "[net.jsign.jca.SmartCard].openChannel(java.lang.String)"
    - Src: "net.jsign.jca.OpenPGPCard:326,1"
      Dst: "[net.jsign.jca.OpenPGPCard].<init>(javax.smartcardio.CardChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServiceJcaProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningService].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[net.jsign.jca.SigningService].getName()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].dquote(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.Strings:57,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.Strings:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].isBlank(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:70"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:71"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:77"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:76"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:73"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:68,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.log4j.util.Strings:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.util.Strings:72,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.util.Strings:73,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.Strings].isNotBlank(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isBlank(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:116"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:115"
        BranchSideFuncs:
        - "isBlank(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:116,1"
      Dst: "[net.jsign.log4j.util.Strings].isBlank(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Strings].isBlank(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:68"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:70"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:71"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:77"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:76"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:73"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:68,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.log4j.util.Strings:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.util.Strings:72,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.log4j.util.Strings:73,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.Strings].isNotEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:140"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:139"
        BranchSideFuncs:
        - "isEmpty(java.lang.CharSequence)"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:140,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Strings].join(java.lang.Iterable,char)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Iterable"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Iterable].iterator()"
    - "[net.jsign.log4j.util.Strings].join(java.util.Iterator,char)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:155"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:158"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:158,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.util.Strings:158,1"
      Dst: "[net.jsign.log4j.util.Strings].join(java.util.Iterator,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.Strings].join(java.util.Iterator,char)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:175"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:178"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:178"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:181"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:187"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:186"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:188"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:192"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:191"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:192"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:200"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:199"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:195"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:198"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:178,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.Strings:181,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.Strings:183,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:187,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.log4j.util.Strings:189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.util.Strings:193,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.Strings:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.log4j.util.Strings].join(java.util.Iterator,char)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:175"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:178"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:178"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:181"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:187"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:186"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:188"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:192"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:191"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:192"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:200"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:199"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:195"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:198"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:178,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.Strings:181,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.Strings:183,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:187,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.log4j.util.Strings:189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.util.Strings:193,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.Strings:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.log4j.util.Strings].splitList(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:204"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:204,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Strings].left(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:232"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:235"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:234"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:235"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:238"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:237"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:238"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:241"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:238,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.log4j.util.Strings:241,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.Strings].quote(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:251,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.Strings:251,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.Strings:251,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:251,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].trimToNull(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:279"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:279"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:278"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:280"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:279,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.util.Strings:280,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.Strings].<init>()"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.Strings:283,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 293
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:294,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:304,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Strings].concat(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:314"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:316"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:315"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:319"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:314,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.Strings:319,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.util.Strings:321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:321,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.Strings:323,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.Strings].repeat(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:336"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:339"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:338"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.Strings:341"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:344"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.Strings:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:335,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:337,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:339,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.util.Strings:342,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.Strings:344,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.Strings:346,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    functionUses: 12
    ICount: 11
    EdgeCount: 112
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.ASN1TaggedObject:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 28
    ICount: 17
    EdgeCount: 180
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 33
    ICount: 22
    EdgeCount: 265
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 6
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].rebuildConstructed(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].replaceTag(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalTypes].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalTypes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalTypes:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalTypes].get(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalTypes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1UniversalType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 27
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.file.Counters$NoopCounter:306,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].add(long)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].get()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: 316
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].getBigInteger()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].getLong()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$NoopCounter:327,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].increment()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$NoopCounter].toString()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$NoopCounter"
    linkageType: null
    functionLinenumber: 342
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$AtomicIntegerWriter:250,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:254"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:257,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:258,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:262,1"
      Dst: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:271,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:271,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicIntegerWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:271,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicIntegerWriter:271,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.VariantSelector].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.VariantSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.VariantSelector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.VariantSelector].getBestVariantName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.VariantSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.VariantSelector].getFeatureMatrix()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.VariantSelector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[][]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger64(int,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 36
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 343
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "implMulwAcc(long[],long,long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMulwAcc(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 37
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].createPrimitive(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1RelativeOID"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].<init>(byte[],java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-2"
        BranchSideFuncs:
        - "<init>(byte[],java.lang.String)"
        - "clone(byte[])"
        - "isValidContents(byte[])"
        - "<init>(byte[])"
        - "checkContentsLength(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].checkContentsLength(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].isValidContents(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1RelativeOID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 36
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getMaskGenAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getSaltLength()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].getTrailerField()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 110
    ICount: 38
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setMaxRecordLength(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:124"
        BranchSideFuncs:
        - "createNewDataSource()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:113,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:114,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:115,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[])"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[java.lang.Math].multiplyExact(long,long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:129,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:129,1"
      Dst: "[java.lang.Math].multiplyExact(long,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:130,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:130,1"
      Dst: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 545
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:546,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - Src: "net.jsign.poi.util.IOUtils:548,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[])"
    functionSourceFile: "net.jsign.poi.poifs.nio.ByteArrayBackedDataSource"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[],int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.ByteArrayBackedDataSource:42,1"
      Dst: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.nio.ByteArrayBackedDataSource"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.DataSource].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.ByteArrayBackedDataSource:36,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:137,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:141,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:142,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:143,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:144,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:145,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:147,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:150,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:166,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.FileChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:203,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.FileChannel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:223,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:244,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 10
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.nio.channels.FileChannel"
    - "java.io.File"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - "[net.jsign.poi.EmptyFileException].<init>(java.io.File)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.File,boolean)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].getChannel()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    - "[java.io.File].length()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 1
    ICount: 35
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:254"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:262"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:261"
        BranchSideFuncs:
        - "<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:255"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:258"
        BranchSideFuncs:
        - "<init>(java.io.File)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:257"
        BranchSideFuncs:
        - "getChannel()"
        - "<init>(java.io.File,boolean)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:278"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:265"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:278"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:265"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:250,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:255,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:256,1"
      Dst: "[net.jsign.poi.EmptyFileException].<init>(java.io.File)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:258,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.File,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:259,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].getChannel()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:262,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:267,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:270,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:273,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:279,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - "[java.nio.channels.Channels].newChannel(java.io.InputStream)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].sanityCheckBlockCount(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].calculateMaximumSize(net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].capacity()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.Buffer].position()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[],int)"
    - "[java.nio.channels.Channel].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].closeInputStream(java.io.InputStream,boolean)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:335"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:340"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:339"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:355"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:355"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:340"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:339"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:355"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:355"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:340"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:315,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:318,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:322,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:323,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:326,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:329,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:329,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].sanityCheckBlockCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:334,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].calculateMaximumSize(net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:336,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:340,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:345,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:346,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:347,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:354,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:354,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:354,1"
      Dst: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[],int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:355,1"
      Dst: "[java.nio.channels.Channel].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:318,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:357,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].closeInputStream(java.io.InputStream,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:361,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 17
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].closeInputStream(java.io.InputStream,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].close()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[net.jsign.log4j.Logger].atError()"
    - "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:372"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:370"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:370,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:373,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:377,1"
      Dst: "[net.jsign.log4j.Logger].atError()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:377,1"
      Dst: "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:377,1"
      Dst: "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.Math].min(int,int)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 83
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:395"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:399"
        BranchSideFuncs:
        - "getBATCount()"
        - "getXBATIndex()"
        - "getBATArray()"
        - "getXBATCount()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:405"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:425"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:424"
        BranchSideFuncs:
        - "getSBATStart()"
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
        - "getSBATCount()"
        - "getRoot()"
        - "<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:415"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:null"
        BranchSideFuncs:
        - "getValueAt(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:417"
      Branch Sides: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:417"
      Branch Sides: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:388,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:392,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:395,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:396,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:400,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:404,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:405,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:406,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:407,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:408,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:409,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:410,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:410,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:411,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:414,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:425,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:429,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:430,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:430,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:431,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:438,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 621
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.DataSource].size()"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:300"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:298,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:301,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 442
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:444,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:445,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:446,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:447,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 10
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:100"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:108"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector:109,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[])"
    - "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    - "[java.nio.ByteBuffer].get(byte[])"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:96"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:99"
        BranchSideFuncs:
        - "recomputeFree()"
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:92,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:97,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:98,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[])"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:100,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:67,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:71,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[])"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LittleEndian:113,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].recomputeFree()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:76"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:81"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:77"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:75"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:74"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 341
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.common.POIFSBigBlockSize:59,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:217"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:218,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,java.lang.Iterable)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:74,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:74,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:72,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,java.lang.Iterable)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.log4j.spi.AbstractLogger].atWarn()"
    - "[net.jsign.log4j.Logger].atWarn()"
    - "[net.jsign.log4j.util.Unbox].box(int)"
    - "[net.jsign.log4j.LogBuilder:net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[net.jsign.poi.poifs.property.PropertyFactory].convertToProperties(byte[],java.util.List)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.poi.poifs.property.PropertyTable].populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.Buffer].remaining()"
    - "[net.jsign.log4j.LogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 69
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:84"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:108"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:107"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:87"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:90"
        BranchSideFuncs:
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:87"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:90"
        BranchSideFuncs:
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:88"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:90"
        BranchSideFuncs:
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:94"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:101"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:109"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:116"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:115"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:110"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:113"
        BranchSideFuncs:
        - "populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:82,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:84,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:84,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:87,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:87,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:88,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:88,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:91,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:91,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:94,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:98,1"
      Dst: "[net.jsign.log4j.Logger].atWarn()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:98,1"
      Dst: "[net.jsign.log4j.util.Unbox].box(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:98,1"
      Dst: "[net.jsign.log4j.LogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:102,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:105,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyFactory].convertToProperties(byte[],java.util.List)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:108,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:111,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:113,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 545
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:546,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - Src: "net.jsign.poi.util.IOUtils:548,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox].box(int)"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 4
    returnType: "java.lang.StringBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].getSB()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox:205,1"
      Dst: "[net.jsign.log4j.util.Unbox].getSB()"
    - Src: "net.jsign.log4j.util.Unbox:205,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox].getSB()"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 3
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].getState()"
    - "[net.jsign.log4j.util.Unbox$WebSafeState].getStringBuilder()"
    - "[net.jsign.log4j.util.Unbox$State].getStringBuilder()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox:266"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox:265"
        BranchSideFuncs:
        - "getStringBuilder()"
        - "getState()"
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox:266,1"
      Dst: "[net.jsign.log4j.util.Unbox].getState()"
    - Src: "net.jsign.log4j.util.Unbox:266,1"
      Dst: "[net.jsign.log4j.util.Unbox$State].getStringBuilder()"
    - Src: "net.jsign.log4j.util.Unbox:266,1"
      Dst: "[net.jsign.log4j.util.Unbox$WebSafeState].getStringBuilder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Unbox].getState()"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "net.jsign.log4j.util.Unbox$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox$State].<init>()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox:258"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox:262"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "net.jsign.log4j.util.Unbox:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox:257,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.util.Unbox:259,1"
      Dst: "[net.jsign.log4j.util.Unbox$State].<init>()"
    - Src: "net.jsign.log4j.util.Unbox:260,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.Unbox$State].<init>()"
    functionSourceFile: "net.jsign.log4j.util.Unbox$State"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].access$000()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox$State:103"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$State:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox$State:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.Unbox$State:100,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$000()"
    - Src: "net.jsign.log4j.util.Unbox$State:104,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.Unbox].access$000()"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox$State].getStringBuilder()"
    functionSourceFile: "net.jsign.log4j.util.Unbox$State"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].access$100()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox$State:109,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$100()"
    - Src: "net.jsign.log4j.util.Unbox$State:110,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.Unbox$WebSafeState].getStringBuilder()"
    functionSourceFile: "net.jsign.log4j.util.Unbox$WebSafeState"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Unbox].access$000()"
    - "[net.jsign.log4j.util.Unbox].access$100()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Unbox$WebSafeState:71"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$WebSafeState:79"
        BranchSideFuncs:
        - "access$000()"
      - BranchSide: "net.jsign.log4j.util.Unbox$WebSafeState:78"
        BranchSideFuncs:
        - "access$100()"
    - Branch String: "net.jsign.log4j.util.Unbox$WebSafeState:73"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Unbox$WebSafeState:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:70,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:72,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$000()"
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:74,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:76,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:80,1"
      Dst: "[net.jsign.log4j.util.Unbox].access$100()"
    - Src: "net.jsign.log4j.util.Unbox$WebSafeState:81,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.Unbox].access$100()"
    functionSourceFile: "net.jsign.log4j.util.Unbox"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyFactory].convertToProperties(byte[],java.util.List)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyFactory"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    - "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyFactory:46"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyFactory:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyFactory:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:50,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:50,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:49,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:56,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(int,byte[],int)"
    - Src: "net.jsign.poi.poifs.property.PropertyFactory:62,1"
      Dst: "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getChildIndex()"
    - "[net.jsign.poi.poifs.property.Property].isValidIndex(int)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].isDirectory()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.poi.poifs.property.PropertyTable].populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[net.jsign.poi.poifs.property.Property].getPreviousChildIndex()"
    - "[net.jsign.poi.poifs.property.PropertyTable].isValidIndex(int)"
    - "[net.jsign.poi.poifs.property.Property].getNextChildIndex()"
    - "[java.util.Stack].<init>()"
    - "[java.util.List].get(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    functionUses: 2
    ICount: 36
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:227"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:234"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:254"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:253"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:236"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:240"
        BranchSideFuncs:
        - "isDirectory()"
        - "addChild(net.jsign.poi.poifs.property.Property)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:242"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:245"
        BranchSideFuncs:
        - "populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:244"
        BranchSideFuncs:
        - "getPreviousChildIndex()"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:246"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:249"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:248"
        BranchSideFuncs:
        - "getNextChildIndex()"
        - "isValidIndex(int)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:250"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:253"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:225,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getChildIndex()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:227,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isValidIndex(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:232,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:233,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:233,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:234,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:235,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:241,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:242,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:243,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].populatePropertyTree(net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:245,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getPreviousChildIndex()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:246,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].isValidIndex(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:249,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getNextChildIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty:273"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty:276"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:271,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:275,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:277,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:278,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].isValidIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].isValidIndex(int)"
    - "[net.jsign.log4j.spi.AbstractLogger].atWarn()"
    - "[net.jsign.log4j.Logger].atWarn()"
    - "[net.jsign.log4j.util.Unbox].box(int)"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.LogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:257"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:259"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:258"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:259"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:260"
        BranchSideFuncs:
        - "box(int)"
        - "log(java.lang.String,java.lang.Object,java.lang.Object)"
        - "atWarn()"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:259"
        BranchSideFuncs:
        - "box(int)"
        - "log(java.lang.String,java.lang.Object,java.lang.Object)"
        - "atWarn()"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:259"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:263"
        BranchSideFuncs:
        - "box(int)"
        - "log(java.lang.String,java.lang.Object,java.lang.Object)"
        - "atWarn()"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:257,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isValidIndex(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:259,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:260,1"
      Dst: "[net.jsign.log4j.Logger].atWarn()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:260,1"
      Dst: "[net.jsign.log4j.util.Unbox].box(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:260,1"
      Dst: "[net.jsign.log4j.LogBuilder].log(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.property.RootProperty"
    - "java.util.List"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:47"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:50"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:49"
        BranchSideFuncs:
        - "getStartBlock()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:46,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:48,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:32,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 252
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:515,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 442
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:444,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:445,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:446,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:447,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 3
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.Math].multiplyExact(long,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452"
        BranchSideFuncs:
        - "getBigBlockSize()"
        - "createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
        - "setOurBlockIndex(int)"
        - "write(java.nio.ByteBuffer,long)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:451"
        BranchSideFuncs:
        - "createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:452,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:453,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:455,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:455,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:457,1"
      Dst: "[java.lang.Math].multiplyExact(long,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:458,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBlockIfNeeded(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 486
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].write(java.nio.ByteBuffer,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    functionUses: 2
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:487,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:490,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:492,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:492,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:493,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 3
    returnType: "net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:505,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getBATBlockAndIndex(int,net.jsign.poi.poifs.storage.HeaderBlock,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:515,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:516,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:524,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:526,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getFreeBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 536
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 104
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:558"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:544"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:554"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:553"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:546"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:543"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:604"
        BranchSideFuncs:
        - "getBATCount()"
        - "setBATArray(int[])"
        - "getBATArray()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:567"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "hasFreeSectors()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:568"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:572"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:571"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:573"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588"
        BranchSideFuncs:
        - "setXBATStart(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:587"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:603"
        BranchSideFuncs:
        - "getValueAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:597"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:596"
        BranchSideFuncs:
        - "setValueAt(int,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:595"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:537,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:541,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:542,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:545,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:559,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createBAT(int,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:560,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:561,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:564,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:585,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:586,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:588,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:589,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:593,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:606,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:608,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:610,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].size()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.DataSource].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:617,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 621
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].size()"
    - "[net.jsign.poi.poifs.nio.DataSource].size()"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].size()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:622,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].<init>(net.jsign.poi.poifs.filesystem.BlockStore,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 629
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 637
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 646
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:647,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:647,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:656,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createDocument(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:672,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:672,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.filesystem.DirectoryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty:net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 56
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:80"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:85"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:93"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:98"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:104"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:77,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].<init>(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:51,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:82,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String[])"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:91,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:95,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:98,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:101,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentNode].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:107,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:108,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:109,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 7
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:423,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createDocument(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.poi.poifs.filesystem.POIFSWriterListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:687,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:687,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.poi.poifs.filesystem.POIFSWriterListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:443,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createDirectory(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryEntry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDirectory(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:700,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:700,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDirectory(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDirectory(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryEntry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:460,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:462,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:463,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].addDirectory(net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:465,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:465,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].addChild(net.jsign.poi.poifs.property.Property)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:466,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:467,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:468,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createOrUpdateDocument(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:716,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:716,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 487
    functionDepth: 8
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:488"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:491"
        BranchSideFuncs:
        - "createDocument(java.lang.String,java.io.InputStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:490"
        BranchSideFuncs:
        - "getEntryCaseInsensitive(java.lang.String)"
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
        - "replaceContents(java.io.InputStream)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:488,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:489,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:491,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:492,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:493,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].isInPlaceWriteable()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:726"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:725"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:726"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:725"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:726,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 736
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:737"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:742"
        BranchSideFuncs:
        - "isWriteable()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:749"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:748"
        BranchSideFuncs:
        - "syncWithDataSource()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:738,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:749,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 773
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 45
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:795"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:800"
        BranchSideFuncs:
        - "getOurBlockIndex()"
        - "hasNext()"
        - "next()"
        - "writeData(java.nio.ByteBuffer)"
        - "getBlockAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:799"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:774,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:778,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:779,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:785,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:786,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:792,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:793,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOccupiedSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 27
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263"
        BranchSideFuncs:
        - "getBlockAt(int)"
        - "getOurBlockIndex()"
        - "hasNext()"
        - "hasFreeSectors()"
        - "next()"
        - "writeData(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:262"
        BranchSideFuncs:
        - "_get_property_table()"
        - "getRoot()"
        - "setSize(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:255"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:258"
        BranchSideFuncs:
        - "getBATEntriesPerBlock()"
        - "getBigBlockSizeDetails()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:257"
        BranchSideFuncs:
        - "getOccupiedSize()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:252,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:252,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:253,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:255,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].hasFreeSectors()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:256,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:256,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:258,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOccupiedSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem]._get_property_table()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:263,1"
      Dst: "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.filesystem.BlockStore"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.property.Property].setIndex(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].preWrite()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].preWrite()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.Property].preWrite()"
    functionUses: 1
    ICount: 25
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:195"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:203"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:202"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "preWrite()"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:197"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:198"
        BranchSideFuncs:
        - "setIndex(int)"
        - "add(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:197"
        BranchSideFuncs:
        - "setIndex(int)"
        - "add(java.lang.Object)"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:203"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:192,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:195,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:195,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:195,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:198,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setIndex(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:199,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:203,1"
      Dst: "[net.jsign.poi.poifs.property.Property].preWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.property.Property].writeData(java.io.OutputStream)"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.OutputStream].close()"
    functionUses: 1
    ICount: 19
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:211"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:216"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:215"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:212"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:215"
        BranchSideFuncs:
        - "writeData(java.io.OutputStream)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:214"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:219"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:222"
        BranchSideFuncs:
        - "getStartBlock()"
        - "setStartBlock(int)"
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:210,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:211,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:211,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:211,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:213,1"
      Dst: "[net.jsign.poi.poifs.property.Property].writeData(java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:216,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:219,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getStartBlock()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:219,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:220,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSStream:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:124"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSStream:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].<init>(net.jsign.poi.poifs.filesystem.POIFSStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:158,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:168,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:380"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:369,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:377,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:380,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:381,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].<init>(int)"
    - "[net.jsign.poi.util.IntegerField].set(int,byte[])"
    functionUses: 25
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:109,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int)"
    - Src: "net.jsign.poi.util.IntegerField:110,1"
      Dst: "[net.jsign.poi.util.IntegerField].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IntegerField].<init>(int)"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IntegerField:50"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IntegerField:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.IntegerField:52,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.IntegerField].set(int,byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].writeToBytes(byte[])"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:150,1"
      Dst: "[net.jsign.poi.util.IntegerField].writeToBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IntegerField].writeToBytes(byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:202,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 468
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].read(int,long)"
    - "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 11
    ICount: 24
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:470,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:472,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].read(int,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:474,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:475,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:184,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 269
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].serialize()"
    - "[java.nio.ByteBuffer].put(byte[])"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:270,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].serialize()"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:270,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 760
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:761,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:764,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 773
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 45
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:795"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:800"
        BranchSideFuncs:
        - "getOurBlockIndex()"
        - "hasNext()"
        - "next()"
        - "writeData(java.nio.ByteBuffer)"
        - "getBlockAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:799"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:774,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:778,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:779,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:785,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:786,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:792,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:793,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 773
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 45
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:795"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:796"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:800"
        BranchSideFuncs:
        - "getOurBlockIndex()"
        - "hasNext()"
        - "next()"
        - "writeData(java.nio.ByteBuffer)"
        - "getBlockAt(int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:799"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:774,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:777,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:778,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].preWrite()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:779,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].write(net.jsign.poi.poifs.filesystem.POIFSStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:784,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:783,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:785,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:786,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:787,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:791,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:792,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getOurBlockIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:793,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].writeData(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 808
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.DataSource].close()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:809,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createDocumentInputStream(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:856,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:856,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:144,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(net.jsign.poi.poifs.filesystem.Entry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].remove(net.jsign.poi.poifs.filesystem.EntryNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 865
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.EntryNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.property.PropertyTable].removeProperty(net.jsign.poi.poifs.property.Property)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:866"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:872"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "free()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:871"
        BranchSideFuncs:
        - "removeProperty(net.jsign.poi.poifs.property.Property)"
        - "getProperty()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:867,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:867,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:868,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:872,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].removeProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getViewableArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableArray()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:885"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:889"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:888"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:885,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:886,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:886,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getViewableIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableIterator()"
    - "[java.util.Collections].emptyIterator()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:902"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:906"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:905"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:902,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:903,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:903,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableIterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:906,1"
      Dst: "[java.util.Collections].emptyIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getViewableIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:579,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:581,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:581,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:582,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:583,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:919,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].preferArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getShortDescription()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 939
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:940,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSizeDetails()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 947
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].create(java.io.File)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:966"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:966"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:960"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:961,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:962,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:962,1"
      Dst: "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:963,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:961,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:964,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:967,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 25
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:137,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:141,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:142,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:143,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:144,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:145,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:147,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:150,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:121"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:124"
        BranchSideFuncs:
        - "createNewDataSource()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:113,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:114,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:115,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:116,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 175
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LongField].<init>(int,long,byte[])"
    - "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - "[net.jsign.poi.util.ShortField].<init>(int,short,byte[])"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getHeaderValue()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 1
    ICount: 62
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:176,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:181,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:184,1"
      Dst: "[net.jsign.poi.util.LongField].<init>(int,long,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:185,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:189,1"
      Dst: "[net.jsign.poi.util.ShortField].<init>(int,short,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:193,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getHeaderValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LongField].<init>(int,long,byte[])"
    functionSourceFile: "net.jsign.poi.util.LongField"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LongField].<init>(int)"
    - "[net.jsign.poi.util.LongField].set(long,byte[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LongField:107,1"
      Dst: "[net.jsign.poi.util.LongField].<init>(int)"
    - Src: "net.jsign.poi.util.LongField:108,1"
      Dst: "[net.jsign.poi.util.LongField].set(long,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LongField].<init>(int)"
    functionSourceFile: "net.jsign.poi.util.LongField"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LongField:49"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LongField:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.LongField:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.LongField:51,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.LongField:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.LongField:51,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.util.LongField:51,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.LongField:51,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.LongField].set(long,byte[])"
    functionSourceFile: "net.jsign.poi.util.LongField"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LongField].writeToBytes(byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LongField:147,1"
      Dst: "[net.jsign.poi.util.LongField].writeToBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LongField].writeToBytes(byte[])"
    functionSourceFile: "net.jsign.poi.util.LongField"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.LongField:199,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putLong(byte[],int,long)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].<init>(int)"
    - "[net.jsign.poi.util.IntegerField].set(int,byte[])"
    functionUses: 25
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:109,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int)"
    - Src: "net.jsign.poi.util.IntegerField:110,1"
      Dst: "[net.jsign.poi.util.IntegerField].set(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ShortField].<init>(int,short,byte[])"
    functionSourceFile: "net.jsign.poi.util.ShortField"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "short"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.ShortField].<init>(int)"
    - "[net.jsign.poi.util.ShortField].set(short,byte[])"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.ShortField:107,1"
      Dst: "[net.jsign.poi.util.ShortField].<init>(int)"
    - Src: "net.jsign.poi.util.ShortField:108,1"
      Dst: "[net.jsign.poi.util.ShortField].set(short,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ShortField].<init>(int)"
    functionSourceFile: "net.jsign.poi.util.ShortField"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.ShortField:49"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.ShortField:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.ShortField:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.ShortField:51,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.ShortField:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.ShortField:51,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.util.ShortField:51,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.ShortField:51,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.ShortField].set(short,byte[])"
    functionSourceFile: "net.jsign.poi.util.ShortField"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "short"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.ShortField].writeToBytes(byte[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.ShortField:147,1"
      Dst: "[net.jsign.poi.util.ShortField].writeToBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.ShortField].writeToBytes(byte[])"
    functionSourceFile: "net.jsign.poi.util.ShortField"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.ShortField:199,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].putShort(byte[],int,short)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 445
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getHeaderValue()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.poi.poifs.property.RootProperty].<init>()"
    - "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:55,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:56,1"
      Dst: "[net.jsign.poi.poifs.property.RootProperty].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:56,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:30,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:33,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:34,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:35,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].<init>()"
    - "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:49,1"
      Dst: "[net.jsign.poi.poifs.property.Property].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:40,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:50,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setName(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:51,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:52,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:53,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:54,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].addProperty(net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSMiniStore"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.property.RootProperty"
    - "java.util.List"
    - "net.jsign.poi.poifs.storage.HeaderBlock"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:47"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:50"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:49"
        BranchSideFuncs:
        - "getStartBlock()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:46,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:48,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSMiniStore:55,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].createNewDataSource()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[])"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[java.lang.Math].multiplyExact(long,long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:129,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:129,1"
      Dst: "[java.lang.Math].multiplyExact(long,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:130,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:130,1"
      Dst: "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:315"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:318"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:319"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:311,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:316,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].createEmptyBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 2
    returnType: "net.jsign.poi.poifs.storage.BATBlock"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.BATBlock:111"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:115"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
      - BranchSide: "net.jsign.poi.poifs.storage.BATBlock:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.BATBlock:110,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    - Src: "net.jsign.poi.poifs.storage.BATBlock:112,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.BATBlock"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].setNextBlock(int,int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    - "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:524,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBATBlockAndIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:526,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock$BATBlockAndIndex].getIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:525,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setValueAt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].setStartBlock(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:168,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 760
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:761,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:764,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 808
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.DataSource].close()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:809,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 10
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.nio.channels.FileChannel"
    - "java.io.File"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - "[net.jsign.poi.EmptyFileException].<init>(java.io.File)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.File,boolean)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].getChannel()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    - "[java.io.File].length()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 1
    ICount: 35
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:254"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:262"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:261"
        BranchSideFuncs:
        - "<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:255"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:258"
        BranchSideFuncs:
        - "<init>(java.io.File)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:257"
        BranchSideFuncs:
        - "getChannel()"
        - "<init>(java.io.File,boolean)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:278"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:265"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:278"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:265"
        BranchSideFuncs:
        - "readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
        - "<init>(java.nio.ByteBuffer)"
        - "readCoreContents()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:250,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:255,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:256,1"
      Dst: "[net.jsign.poi.EmptyFileException].<init>(java.io.File)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:258,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.File,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:259,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].getChannel()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:262,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:266,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:267,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:270,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:273,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:279,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.poi.EmptyFileException].<init>(java.io.File)"
    functionSourceFile: "net.jsign.poi.EmptyFileException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.EmptyFileException:32"
      Branch Sides:
      - BranchSide: "net.jsign.poi.EmptyFileException:32"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.EmptyFileException:31"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.EmptyFileException:32,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.poi.EmptyFileException:32,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.EmptyFileException:32,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.EmptyFileException:33,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.poi.EmptyFileException:33,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.EmptyFileException:32,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.File,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,boolean)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].newSrcFile(java.io.File,java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:61"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:61"
        BranchSideFuncs:
        - "<init>(java.io.RandomAccessFile,boolean)"
        - "newSrcFile(java.io.File,java.lang.String)"
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:60"
        BranchSideFuncs:
        - "<init>(java.io.RandomAccessFile,boolean)"
        - "newSrcFile(java.io.File,java.lang.String)"
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:61,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].newSrcFile(java.io.File,java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:61,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].newSrcFile(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "java.io.RandomAccessFile"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:186"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:189"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:186,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:187,1"
      Dst: "[java.io.File].toString()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:187,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:189,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.RandomAccessFile"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,java.nio.channels.FileChannel,boolean,boolean)"
    - "[java.io.RandomAccessFile].getChannel()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:65,1"
      Dst: "[java.io.RandomAccessFile].getChannel()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:65,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,java.nio.channels.FileChannel,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,java.nio.channels.FileChannel,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.RandomAccessFile"
    - "java.nio.channels.FileChannel"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.DataSource].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 2
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:82"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:78"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:79,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].<init>()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:54,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].getChannel()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "java.nio.channels.FileChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.nio.channels.FileChannel,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,java.nio.channels.FileChannel,boolean,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:76,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].<init>(java.io.RandomAccessFile,java.nio.channels.FileChannel,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].capacity()"
    - "[java.nio.Buffer].position()"
    functionUses: 2
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:371"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:374"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:373"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:372"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:371"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:375"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:376"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:375"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:375"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:378"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:370,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.util.IOUtils:375,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "net.jsign.poi.util.IOUtils:375,1"
      Dst: "[java.nio.Buffer].position()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.nio.ByteBuffer,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:115,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.nio.ByteBuffer,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:115,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].toByteArray(java.nio.ByteBuffer,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 291
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].get(byte[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:296"
        BranchSideFuncs:
        - "checkByteSizeLimit(int)"
    - Branch String: "net.jsign.poi.util.IOUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:296"
        BranchSideFuncs:
        - "checkByteSizeLimit(int)"
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:292,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "net.jsign.poi.util.IOUtils:292,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "net.jsign.poi.util.IOUtils:294,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.poi.util.IOUtils:297,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    - Src: "net.jsign.poi.util.IOUtils:299,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:122"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:125"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:122"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:125"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:123,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:600,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.poi.util.IOUtils:600,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.IOUtils:596,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.poi.util.IOUtils:596,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[net.jsign.poi.poifs.filesystem.FileMagic].valueOf(byte[])"
    - "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.NotOLE2FileException].<init>(java.lang.String)"
    - "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.util.HexDump].longToHex(long)"
    - "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - "[net.jsign.poi.util.IntegerField].<init>(int,byte[])"
    - "[net.jsign.poi.util.IntegerField].get()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 103
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:155"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:156"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:160"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:118,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:119,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.FileMagic].valueOf(byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:124,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:128,1"
      Dst: "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:132,1"
      Dst: "[net.jsign.poi.poifs.filesystem.NotOLE2FileException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:147,1"
      Dst: "[net.jsign.poi.util.HexDump].longToHex(long)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:148,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:160,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:160,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:164,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:164,1"
      Dst: "[net.jsign.poi.util.IntegerField].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[net.jsign.poi.poifs.filesystem.FileMagic].valueOf(byte[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.FileMagic"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 1
    returnType: "net.jsign.poi.poifs.filesystem.FileMagic"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.FileMagic].values()"
    - "[net.jsign.poi.poifs.filesystem.FileMagic].findMagic(byte[],byte[])"
    functionUses: 1
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:138"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:151"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:150"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:139"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:137"
        BranchSideFuncs:
        - "values()"
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:142"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:145"
        BranchSideFuncs:
        - "findMagic(byte[],byte[])"
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:146"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:137"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.FileMagic:138,1"
      Dst: "[net.jsign.poi.poifs.filesystem.FileMagic].values()"
    - Src: "net.jsign.poi.poifs.filesystem.FileMagic:146,1"
      Dst: "[net.jsign.poi.poifs.filesystem.FileMagic].findMagic(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.FileMagic].values()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.FileMagic"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.FileMagic[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.FileMagic:36,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.FileMagic].findMagic(byte[],byte[])"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.FileMagic"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:156"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:161"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:160"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:154"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.FileMagic:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.FileMagic:154"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.OfficeXmlFileException"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.UnsupportedFileFormatException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.OfficeXmlFileException:29,1"
      Dst: "[net.jsign.poi.UnsupportedFileFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.NotOLE2FileException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.NotOLE2FileException"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.NotOLE2FileException:28,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.hssf.OldExcelFormatException"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.OldFileFormatException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.hssf.OldExcelFormatException:23,1"
      Dst: "[net.jsign.poi.OldFileFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.HexDump].longToHex(long)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:256,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.poi.util.HexDump:257,1"
      Dst: "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:258,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: 292
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "long"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Math].toIntExact(long)"
    - "[java.lang.StringBuilder].append(char[])"
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.HexDump:296"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:301"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:300"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:298"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:293,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:297,1"
      Dst: "[java.lang.Math].toIntExact(long)"
    - Src: "net.jsign.poi.util.HexDump:301,1"
      Dst: "[java.lang.StringBuilder].append(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.LittleEndian:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.LittleEndian:161"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IntegerField].<init>(int,byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].<init>(int)"
    - "[net.jsign.poi.util.IntegerField].readFromBytes(byte[])"
    functionUses: 15
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:89,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int)"
    - Src: "net.jsign.poi.util.IntegerField:90,1"
      Dst: "[net.jsign.poi.util.IntegerField].readFromBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IntegerField].<init>(int)"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IntegerField:50"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IntegerField:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.IntegerField:52,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.IntegerField].readFromBytes(byte[])"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IntegerField:167,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    functionSourceFile: "net.jsign.poi.util.LittleEndian"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IntegerField].get()"
    functionSourceFile: "net.jsign.poi.util.IntegerField"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readCoreContents()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    - "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.Math].min(int,int)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 83
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:395"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:399"
        BranchSideFuncs:
        - "getBATCount()"
        - "getXBATIndex()"
        - "getBATArray()"
        - "getXBATCount()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:405"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:425"
        BranchSideFuncs:
        - "getXBATEntriesPerBlock()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:424"
        BranchSideFuncs:
        - "getSBATStart()"
        - "<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
        - "getSBATCount()"
        - "getRoot()"
        - "<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:415"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:null"
        BranchSideFuncs:
        - "getValueAt(int)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:417"
      Branch Sides: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:417"
      Branch Sides: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:388,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:392,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getChainLoopDetector()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:395,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:396,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].readBAT(int,net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:400,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:404,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:405,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:406,1"
      Dst: "[net.jsign.poi.poifs.filesystem.BlockStore$ChainLoopDetector].claim(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:407,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:408,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].createBATBlock(net.jsign.poi.poifs.common.POIFSBigBlockSize,java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:409,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].setOurBlockIndex(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:410,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getXBATEntriesPerBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:410,1"
      Dst: "[net.jsign.poi.poifs.storage.BATBlock].getValueAt(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:411,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:414,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:425,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].<init>(net.jsign.poi.poifs.storage.HeaderBlock,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:429,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:430,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:430,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].<init>(net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.property.RootProperty,java.util.List,net.jsign.poi.poifs.storage.HeaderBlock)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:431,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:432,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:438,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getNextBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 971
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:972,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getHeaderBlock()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.storage.HeaderBlock"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].releaseBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 986
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].releaseBuffer(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:987"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:990"
        BranchSideFuncs:
        - "releaseBuffer(java.nio.ByteBuffer)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:989"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:988,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].releaseBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].sanityCheckBlockCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:993"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:999"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:1005"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:1004"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:994,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:994,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:994,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:994,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:994,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.function.Constants].<init>()"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.function.Constants:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$6(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$5(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$4(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$3(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$2(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$1()"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Constants].lambda$static$0(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Constants"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$4].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$4:131,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$4].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$4:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$4:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$4:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$4:134,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$4:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$4:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$4:135,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$4:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$4:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].getQ()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519$1].<init>(net.jsign.bouncycastle.math.ec.custom.djb.Curve25519,int,int[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].copy(int[],int,int[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519$1].<init>(net.jsign.bouncycastle.math.ec.custom.djb.Curve25519,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519$1].<init>(net.jsign.bouncycastle.math.ec.custom.djb.Curve25519,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getDQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].getQInv()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.StreamUtil].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.StreamUtil].findLimit(java.io.InputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - "[java.io.ByteArrayInputStream].available()"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].size()"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].maxMemory()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.ByteArrayInputStream].available()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.StreamUtil:-1,1"
      Dst: "[java.lang.Runtime].maxMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].getLimit()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.DSAParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.DSAParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters].getX()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySourceProvider].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].isPredictionResistant()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 6
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    functionUses: 4
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].setDaemon(boolean)"
    - "[java.lang.Thread].start()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].setDaemon(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].entropySize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].<init>(char[],byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "char[]"
    - "byte[]"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.PBEKeySpec].<init>(char[],byte[],int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].<init>(char[],byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].isDefaultPrf()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].getPrf()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.util.PropertySource$Util].tokenize(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.PropertySource$Util"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find(int)"
    - "[java.util.regex.Matcher].end()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:141"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:144"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:154"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:155"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toRootLowerCase(java.lang.String)"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:154"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.log4j.util.PropertySource$Util:141,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:142,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:144,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:146,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:147,1"
      Dst: "[java.util.regex.Matcher].find(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:148,1"
      Dst: "[java.util.regex.Matcher].end()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootLowerCase(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:151,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:155,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.PropertySource$Util].joinAsCamelCase(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.util.PropertySource$Util"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.message.SimpleMessage].charAt(int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].charAt(int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].subSequence(int,int)"
    - "[net.jsign.log4j.message.SimpleMessage].subSequence(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Character].toUpperCase(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].subSequence(int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 24
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:168"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:179"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:169"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:171"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "net.jsign.log4j.util.PropertySource$Util:173"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:177"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "length()"
      - BranchSide: "net.jsign.log4j.util.PropertySource$Util:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertySource$Util:166,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:168,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:172,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:173,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "net.jsign.log4j.util.PropertySource$Util:174,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "net.jsign.log4j.util.PropertySource$Util:179,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.PropertySource$Util].<init>()"
    functionSourceFile: "net.jsign.log4j.util.PropertySource$Util"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.PropertySource$Util:182,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.Throwable].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].<init>(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].getValue()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hasValue(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hasValue(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.math.BigInteger].intValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getValue()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getValue()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].intValueExact()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionUses: 28
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].asn1Equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 10
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 15
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].createPrimitive(byte[],boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Enumerated].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Enumerated"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-2"
        BranchSideFuncs:
        - "<init>()"
        - "clone(byte[])"
        - "isMalformed(byte[])"
        - "signBytesToSkip(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].isMalformed(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Enumerated:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].signBytesToSkip(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 4
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1OctetString:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].getOctets()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 1
    ICount: 42
    EdgeCount: 228
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.IssuerSerial:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1OctetString:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].getOctets()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 1
    ICount: 42
    EdgeCount: 228
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getOctets()"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[],net.jsign.bouncycastle.asn1.x509.IssuerSerial)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    - "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getCertHash()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getIssuerSerial()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.IssuerSerial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toASN1Primitive()"
    functionUses: 110
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "toASN1Primitive()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(byte[])"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.zip.ZipFile:58,1"
      Dst: "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].<init>()"
    - "[net.jsign.zip.CentralDirectory].read(java.nio.channels.SeekableByteChannel)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.zip.ZipFile:69,1"
      Dst: "[net.jsign.zip.CentralDirectory].<init>()"
    - Src: "net.jsign.zip.ZipFile:70,1"
      Dst: "[net.jsign.zip.CentralDirectory].read(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].getInputStream(java.lang.String)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipFile].getInputStream(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:74,1"
      Dst: "[net.jsign.zip.ZipFile].getInputStream(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].getInputStream(java.lang.String,int)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getUncompressedSize()"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - "[net.jsign.zip.LocalFileHeader].<init>()"
    - "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getCompressedSize()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - "[java.util.zip.Inflater].<init>(boolean)"
    - "[java.util.zip.InflaterInputStream].<init>(java.io.InputStream,java.util.zip.Inflater)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 5
    ICount: 66
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.zip.ZipFile:79"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ZipFile:82"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:85"
        BranchSideFuncs:
        - "getUncompressedSize()"
      - BranchSide: "net.jsign.zip.ZipFile:84"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
        - "<init>(java.io.InputStream,long)"
        - "<init>()"
        - "getLocalHeaderOffset()"
        - "getCompressedSize()"
    - Branch String: "net.jsign.zip.ZipFile:82"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:85"
        BranchSideFuncs:
        - "getUncompressedSize()"
      - BranchSide: "net.jsign.zip.ZipFile:84"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
        - "<init>(java.io.InputStream,long)"
        - "<init>()"
        - "getLocalHeaderOffset()"
        - "getCompressedSize()"
    Callsites:
    - Src: "net.jsign.zip.ZipFile:78,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:82,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getUncompressedSize()"
    - Src: "net.jsign.zip.ZipFile:83,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.zip.ZipFile:85,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - Src: "net.jsign.zip.ZipFile:85,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.ZipFile:87,1"
      Dst: "[net.jsign.zip.LocalFileHeader].<init>()"
    - Src: "net.jsign.zip.ZipFile:88,1"
      Dst: "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:89,1"
      Dst: "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:90,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getCompressedSize()"
    - Src: "net.jsign.zip.ZipFile:90,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    - Src: "net.jsign.zip.ZipFile:95,1"
      Dst: "[java.util.zip.Inflater].<init>(boolean)"
    - Src: "net.jsign.zip.ZipFile:96,1"
      Dst: "[java.util.zip.InflaterInputStream].<init>(java.io.InputStream,java.util.zip.Inflater)"
    - Src: "net.jsign.zip.ZipFile:98,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getUncompressedSize()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:183"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:187"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:184,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:184,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:192"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:196"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.LocalFileHeader].<init>()"
    functionSourceFile: "net.jsign.zip.LocalFileHeader"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.LocalFileHeader:44,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.LocalFileHeader"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 2
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.LocalFileHeader:65"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:70"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:72"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:83"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:87"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.LocalFileHeader:62,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.LocalFileHeader:62,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.LocalFileHeader:63,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.LocalFileHeader:64,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.LocalFileHeader:65,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.LocalFileHeader:66,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.LocalFileHeader:69,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.LocalFileHeader:73,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.LocalFileHeader:85,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getCompressedSize()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:174"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:178"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:175,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:175,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 283
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:284,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 299
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:300,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].getInputStream(java.lang.String,int)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getUncompressedSize()"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - "[net.jsign.zip.LocalFileHeader].<init>()"
    - "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getCompressedSize()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - "[java.util.zip.Inflater].<init>(boolean)"
    - "[java.util.zip.InflaterInputStream].<init>(java.io.InputStream,java.util.zip.Inflater)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 5
    ICount: 66
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.zip.ZipFile:79"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ZipFile:82"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:85"
        BranchSideFuncs:
        - "getUncompressedSize()"
      - BranchSide: "net.jsign.zip.ZipFile:84"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
        - "<init>(java.io.InputStream,long)"
        - "<init>()"
        - "getLocalHeaderOffset()"
        - "getCompressedSize()"
    - Branch String: "net.jsign.zip.ZipFile:82"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:85"
        BranchSideFuncs:
        - "getUncompressedSize()"
      - BranchSide: "net.jsign.zip.ZipFile:84"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
        - "<init>(java.io.InputStream,long)"
        - "<init>()"
        - "getLocalHeaderOffset()"
        - "getCompressedSize()"
    Callsites:
    - Src: "net.jsign.zip.ZipFile:78,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.ZipFile:80,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:82,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getUncompressedSize()"
    - Src: "net.jsign.zip.ZipFile:83,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.zip.ZipFile:85,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - Src: "net.jsign.zip.ZipFile:85,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.ZipFile:87,1"
      Dst: "[net.jsign.zip.LocalFileHeader].<init>()"
    - Src: "net.jsign.zip.ZipFile:88,1"
      Dst: "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:89,1"
      Dst: "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:90,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getCompressedSize()"
    - Src: "net.jsign.zip.ZipFile:90,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    - Src: "net.jsign.zip.ZipFile:95,1"
      Dst: "[java.util.zip.Inflater].<init>(boolean)"
    - Src: "net.jsign.zip.ZipFile:96,1"
      Dst: "[java.util.zip.InflaterInputStream].<init>(java.io.InputStream,java.util.zip.Inflater)"
    - Src: "net.jsign.zip.ZipFile:98,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.zip.ZipFile].addEntry(java.lang.String,byte[],boolean)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.LocalFileHeader].<init>()"
    - "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    - "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(long,long,long,int)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    - "[java.util.zip.CRC32].<init>()"
    - "[java.util.zip.Checksum].update(byte[])"
    - "[java.util.zip.Deflater].<init>(int,boolean)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.util.zip.DeflaterOutputStream].<init>(java.io.OutputStream,java.util.zip.Deflater)"
    - "[java.io.FilterOutputStream].write(byte[])"
    - "[java.util.zip.DeflaterOutputStream].flush()"
    - "[java.util.zip.DeflaterOutputStream].close()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.util.zip.CRC32].getValue()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 107
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.zip.ZipFile:110"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:121"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ZipFile:128"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:125"
        BranchSideFuncs:
        - "write(java.nio.channels.WritableByteChannel)"
      - BranchSide: "net.jsign.zip.ZipFile:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ZipFile:141"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:-1"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "net.jsign.zip.ZipFile:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.ZipFile:156"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.ZipFile:140"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "net.jsign.zip.ZipFile:159"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:164"
        BranchSideFuncs:
        - "<init>(long,long,long,int)"
      - BranchSide: "net.jsign.zip.ZipFile:163"
        BranchSideFuncs:
        - "write(java.nio.channels.SeekableByteChannel)"
        - "put(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "net.jsign.zip.ZipFile:104,1"
      Dst: "[java.util.zip.CRC32].<init>()"
    - Src: "net.jsign.zip.ZipFile:105,1"
      Dst: "[java.util.zip.Checksum].update(byte[])"
    - Src: "net.jsign.zip.ZipFile:112,1"
      Dst: "[java.util.zip.Deflater].<init>(int,boolean)"
    - Src: "net.jsign.zip.ZipFile:113,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.zip.ZipFile:114,1"
      Dst: "[java.util.zip.DeflaterOutputStream].<init>(java.io.OutputStream,java.util.zip.Deflater)"
    - Src: "net.jsign.zip.ZipFile:115,1"
      Dst: "[java.io.FilterOutputStream].write(byte[])"
    - Src: "net.jsign.zip.ZipFile:116,1"
      Dst: "[java.util.zip.DeflaterOutputStream].flush()"
    - Src: "net.jsign.zip.ZipFile:117,1"
      Dst: "[java.util.zip.DeflaterOutputStream].close()"
    - Src: "net.jsign.zip.ZipFile:119,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.zip.ZipFile:125,1"
      Dst: "[net.jsign.zip.LocalFileHeader].<init>()"
    - Src: "net.jsign.zip.ZipFile:131,1"
      Dst: "[java.util.zip.CRC32].getValue()"
    - Src: "net.jsign.zip.ZipFile:134,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.zip.ZipFile:136,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.ZipFile:137,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.ZipFile:138,1"
      Dst: "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:139,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.zip.ZipFile:139,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.ZipFile:143,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    - Src: "net.jsign.zip.ZipFile:160,1"
      Dst: "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(long,long,long,int)"
    - Src: "net.jsign.zip.ZipFile:161,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.ZipFile:161,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:166,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[net.jsign.zip.LocalFileHeader].<init>()"
    functionSourceFile: "net.jsign.zip.LocalFileHeader"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.LocalFileHeader:44,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].<init>()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:56,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:77,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64ExtendedInfoExtraField].<init>(long,long,long,int)"
    functionSourceFile: "net.jsign.zip.Zip64ExtendedInfoExtraField"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "long"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ExtraField].<init>()"
    - "[net.jsign.zip.Zip64ExtendedInfoExtraField].update()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:54,1"
      Dst: "[net.jsign.zip.ExtraField].<init>()"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:60,1"
      Dst: "[net.jsign.zip.Zip64ExtendedInfoExtraField].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ExtraField].<init>()"
    functionSourceFile: "net.jsign.zip.ExtraField"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ExtraField:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64ExtendedInfoExtraField].update()"
    functionSourceFile: "net.jsign.zip.Zip64ExtendedInfoExtraField"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putLong(long)"
    - "[java.nio.ByteBuffer].putInt(int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:87"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:90"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:89"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:90"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:93"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:92"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:93"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:96"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:95"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:96"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:102"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:105"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:104"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:105"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:108"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:107"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:108"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64ExtendedInfoExtraField:111"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64ExtendedInfoExtraField:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:101,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:101,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:103,1"
      Dst: "[java.nio.ByteBuffer].putLong(long)"
    - Src: "net.jsign.zip.Zip64ExtendedInfoExtraField:112,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:93,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.CentralDirectory:95,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].bootstrap$()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.zip.CentralDirectoryFileHeader].write(java.nio.channels.WritableByteChannel)"
    - "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    - "[java.util.Map].values()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 72
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectory:109"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:113"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "net.jsign.zip.CentralDirectory:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:117"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:116"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:116"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:130"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:106,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.zip.CentralDirectory:106,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.zip.CentralDirectory:107,1"
      Dst: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].bootstrap$()"
    - Src: "net.jsign.zip.CentralDirectory:107,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "net.jsign.zip.CentralDirectory:107,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "net.jsign.zip.CentralDirectory:108,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.CentralDirectory:109,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.zip.CentralDirectory:109,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.zip.CentralDirectory:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.zip.CentralDirectory:110,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].write(java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.zip.CentralDirectory:120,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.zip.CentralDirectory:124,1"
      Dst: "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].bootstrap$()"
    functionSourceFile: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29:-1,1"
      Dst: "[net.jsign.zip.CentralDirectory$getLocalHeaderOffset__29].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].write(java.nio.channels.WritableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.WritableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:56,1"
      Dst: "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].renameEntry(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - "[net.jsign.zip.LocalFileHeader].<init>()"
    - "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    functionUses: 1
    ICount: 44
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.zip.ZipFile:170"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:173"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.ZipFile:172"
        BranchSideFuncs:
        - "read(java.nio.channels.ReadableByteChannel)"
        - "write(java.nio.channels.SeekableByteChannel)"
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
        - "getLocalHeaderOffset()"
        - "get(java.lang.Object)"
        - "write(java.nio.channels.WritableByteChannel)"
    Callsites:
    - Src: "net.jsign.zip.ZipFile:170,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.zip.ZipFile:171,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:173,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:174,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.zip.ZipFile:175,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:176,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.zip.ZipFile:178,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - Src: "net.jsign.zip.ZipFile:179,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.ZipFile:180,1"
      Dst: "[net.jsign.zip.LocalFileHeader].<init>()"
    - Src: "net.jsign.zip.ZipFile:181,1"
      Dst: "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:184,1"
      Dst: "[net.jsign.zip.ZipRecord].write(java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:187,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:192"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:196"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.LocalFileHeader].<init>()"
    functionSourceFile: "net.jsign.zip.LocalFileHeader"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.LocalFileHeader:44,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.LocalFileHeader].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.LocalFileHeader"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 2
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.LocalFileHeader:65"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:69"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:68"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:70"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:72"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:83"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.LocalFileHeader:87"
      Branch Sides:
      - BranchSide: "net.jsign.zip.LocalFileHeader:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.LocalFileHeader:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.LocalFileHeader:62,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.LocalFileHeader:62,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.LocalFileHeader:63,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.LocalFileHeader:64,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.LocalFileHeader:65,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.LocalFileHeader:66,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.LocalFileHeader:69,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.LocalFileHeader:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.LocalFileHeader:73,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.LocalFileHeader:85,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:93,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.CentralDirectory:95,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].removeEntry(java.lang.String)"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].removeEntry(java.lang.String)"
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].truncate(long)"
    functionUses: 2
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:191,1"
      Dst: "[net.jsign.zip.CentralDirectory].removeEntry(java.lang.String)"
    - Src: "net.jsign.zip.ZipFile:193,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.zip.ZipFile:194,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    - Src: "net.jsign.zip.ZipFile:195,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.ZipFile:195,1"
      Dst: "[java.nio.channels.SeekableByteChannel].truncate(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.CentralDirectory].removeEntry(java.lang.String)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.json-io.util.io.JsonObject].size()"
    - "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].values()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Map].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 3
    ICount: 32
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectory:147"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:158"
        BranchSideFuncs:
        - "get(int)"
        - "get(java.lang.Object)"
        - "size()"
      - BranchSide: "net.jsign.zip.CentralDirectory:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.CentralDirectory:151"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectory:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.CentralDirectory:154"
        BranchSideFuncs:
        - "getLocalHeaderOffset()"
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:147,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.zip.CentralDirectory:148,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.zip.CentralDirectory:150,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.zip.CentralDirectory:150,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.zip.CentralDirectory:150,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.jsign.zip.CentralDirectory:150,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "net.jsign.zip.CentralDirectory:152,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.CentralDirectory:152,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectory:152,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.CentralDirectory:152,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.CentralDirectory:155,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.zip.CentralDirectory:156,1"
      Dst: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.zip.CentralDirectoryFileHeader].getLocalHeaderOffset()"
    functionSourceFile: "net.jsign.zip.CentralDirectoryFileHeader"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.zip.CentralDirectoryFileHeader:192"
      Branch Sides:
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:196"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.zip.CentralDirectoryFileHeader:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.zip.CentralDirectoryFileHeader:193,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.zip.CentralDirectory"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.CentralDirectory:93,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.zip.CentralDirectory:95,1"
      Dst: "[net.jsign.zip.CentralDirectory].write(java.nio.channels.SeekableByteChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.ZipFile].close()"
    functionSourceFile: "net.jsign.zip.ZipFile"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channel].close()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.ZipFile:200"
      Branch Sides:
      - BranchSide: "net.jsign.zip.ZipFile:203"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.ZipFile:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.ZipFile:201,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:64"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:68"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:67"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getBlockStoreBlockSize()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:64,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:69,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,net.jsign.poi.poifs.filesystem.POIFSFileSystem,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:84,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:87,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:88,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:88,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:89,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(java.lang.String,int,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.POIFSWriterListener)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    - "net.jsign.poi.poifs.filesystem.POIFSWriterListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].<init>(net.jsign.poi.poifs.filesystem.POIFSDocument,long)"
    - "[java.lang.String].split(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSWriterEvent].<init>(net.jsign.poi.poifs.filesystem.DocumentOutputStream,net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSWriterListener].processPOIFSWriterEvent(net.jsign.poi.poifs.filesystem.POIFSWriterEvent)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:96"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:100"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:113"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:104"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:93,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:97,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:97,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:98,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:101,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:104,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].<init>(java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:105,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:105,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:106,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].setDocument(net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:108,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].<init>(net.jsign.poi.poifs.filesystem.POIFSDocument,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:109,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:109,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].<init>(java.lang.String[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:110,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].length()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:110,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].getComponent(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:111,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSWriterEvent].<init>(net.jsign.poi.poifs.filesystem.DocumentOutputStream,net.jsign.poi.poifs.filesystem.POIFSDocumentPath,java.lang.String,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:112,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSWriterListener].processPOIFSWriterEvent(net.jsign.poi.poifs.filesystem.POIFSWriterEvent)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:113,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:108,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - "[java.io.BufferedInputStream].mark(int)"
    - "[java.io.BufferedInputStream].reset()"
    - "[java.util.Arrays].fill(byte[],byte)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Math].toIntExact(long)"
    functionUses: 2
    ICount: 69
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:130"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:129"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
        - "getBlockStoreBlockSize()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
        BranchSideFuncs:
        - "write(byte[])"
        - "getMaxRecordLength()"
        - "safelyAllocate(long,int)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:151"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:134"
        BranchSideFuncs:
        - "getOutputStream()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:150"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:149"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:121,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:122,1"
      Dst: "[java.io.BufferedInputStream].mark(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:125,1"
      Dst: "[net.jsign.poi.util.IOUtils].skipFully(java.io.InputStream,long)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:128,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:131,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:135,1"
      Dst: "[java.io.BufferedInputStream].reset()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getOutputStream()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:140,1"
      Dst: "[net.jsign.poi.util.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:146,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:147,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:148,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:150,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:139,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:152,1"
      Dst: "[java.lang.Math].toIntExact(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:159,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:160,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getFileSystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:173,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[java.util.Collections].emptyList()"
    - "[java.lang.Iterable].iterator()"
    functionUses: 2
    ICount: 9
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:177"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:176"
        BranchSideFuncs:
        - "iterator()"
        - "getSize()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.lang.Iterable].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.bouncycastle.util.CollectionStore].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].iterator()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    - "[net.jsign.commons.io.IOExceptionList].iterator()"
    - "[java.util.Collections].emptyList()"
    - "[java.lang.Iterable].iterator()"
    functionUses: 2
    ICount: 9
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:177"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:176"
        BranchSideFuncs:
        - "iterator()"
        - "getSize()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:177,1"
      Dst: "[java.lang.Iterable].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:184,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:188,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].free()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:189,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].store(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:190,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:191,1"
      Dst: "[net.jsign.poi.poifs.property.DocumentProperty].updateSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getDocumentProperty()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.DocumentProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getViewableArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[net.jsign.poi.util.HexDump].dump(byte[],long,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:209"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:213"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:209,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:211,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:211,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:213,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:213,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:213,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:214,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:215,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:219,1"
      Dst: "[net.jsign.poi.util.HexDump].dump(byte[],long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:184,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 545
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:546,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocateCheck(long,int)"
    - Src: "net.jsign.poi.util.IOUtils:548,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSStream].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSStream"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSStream:87,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.HexDump].dump(byte[],long,int)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.HexDump].dump(byte[],long,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:103,1"
      Dst: "[net.jsign.poi.util.HexDump].dump(byte[],long,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.HexDump].dump(byte[],long,int,int)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "byte[]"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[net.jsign.poi.util.HexDump].toAscii(int)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.HexDump:120"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:120"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:123"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:124"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:126"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:124"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:126"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:124"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:126"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:125"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:129"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:130"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:129"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:129"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:137"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:140"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:145"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:152"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:151"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:146"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:153"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.HexDump:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.HexDump:126,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.util.HexDump:130,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.util.HexDump:131,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:135,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.poi.util.HexDump:144,1"
      Dst: "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:152,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.poi.util.HexDump:154,1"
      Dst: "[net.jsign.poi.util.HexDump].toAscii(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 26
  - functionName: "[net.jsign.poi.util.HexDump].writeHex(java.lang.StringBuilder,long,int,java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: 292
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "long"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Math].toIntExact(long)"
    - "[java.lang.StringBuilder].append(char[])"
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.HexDump:296"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:301"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:300"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.HexDump:298"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:293,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.HexDump:297,1"
      Dst: "[java.lang.Math].toIntExact(long)"
    - Src: "net.jsign.poi.util.HexDump:301,1"
      Dst: "[java.lang.StringBuilder].append(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.HexDump].toAscii(int)"
    functionSourceFile: "net.jsign.poi.util.HexDump"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isISOControl(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.HexDump:164"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.HexDump:168"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.HexDump:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.HexDump:164,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getViewableIterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyIterator()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:232,1"
      Dst: "[java.util.Collections].emptyIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].preferArray()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getShortDescription()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:254,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:184,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 74
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 358
    EdgeCount: 142
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].setSigningEncryptionAlgorithmMapping(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].setSigningDigestAlgorithmMapping(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getSignatureName(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 35
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "getId()"
        - "getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "getId()"
        - "getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "getId()"
        - "getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].on(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "areEqual(byte[],int,int,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "areEqual(byte[],int,int,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getDigestAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator].getEncryptionAlgName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-2"
        BranchSideFuncs:
        - "getId()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.DefaultCMSSignatureAlgorithmNameGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "subPFrom(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subPFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addPTo(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].addPTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].<init>(java.lang.String,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].bitsOfSecurity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getServiceName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getPurpose()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService].getParams()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider$JcaCryptoService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].isCatalogFile(java.io.File)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].isFile()"
    - "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    - "[net.jsign.cat.CatalogFile].close()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.cat.CatalogFile:66"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.cat.CatalogFile:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.cat.CatalogFile:66"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.cat.CatalogFile:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:66,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.cat.CatalogFile:66,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.cat.CatalogFile:71,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    - Src: "net.jsign.cat.CatalogFile:72,1"
      Dst: "[net.jsign.cat.CatalogFile].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.cat.CatalogFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[java.nio.file.Files].newByteChannel(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.cat.CatalogFile:86,1"
      Dst: "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(java.io.InputStream)"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:95,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.cat.CatalogFile:98,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.cat.CatalogFile:101,1"
      Dst: "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.cat.CatalogFile:101,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(java.io.InputStream)"
    - Src: "net.jsign.cat.CatalogFile:103,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.cat.CatalogFile].close()"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:109,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].createSignedContent(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.CMSTypedData"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:114,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.CMSTypedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:119,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].createIndirectData(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:124,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.cat.CatalogFile].getSignatures()"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].size()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.IOException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 37
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "net.jsign.cat.CatalogFile:132"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:149"
        BranchSideFuncs:
        - "getSigners()"
        - "getSignerInfos()"
        - "getUnsignedAttributes()"
      - BranchSide: "net.jsign.cat.CatalogFile:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.cat.CatalogFile:138"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:149"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
      - BranchSide: "net.jsign.cat.CatalogFile:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.cat.CatalogFile:140"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:149"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getAttrValues()"
      - BranchSide: "net.jsign.cat.CatalogFile:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.cat.CatalogFile:141"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:149"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
      - BranchSide: "net.jsign.cat.CatalogFile:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:129,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.cat.CatalogFile:132,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.cat.CatalogFile:132,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].size()"
    - Src: "net.jsign.cat.CatalogFile:133,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.cat.CatalogFile:136,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.cat.CatalogFile:136,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.cat.CatalogFile:136,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.cat.CatalogFile:137,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.cat.CatalogFile:139,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.cat.CatalogFile:141,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.cat.CatalogFile:141,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - Src: "net.jsign.cat.CatalogFile:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.cat.CatalogFile:142,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.cat.CatalogFile:142,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.cat.CatalogFile:148,1"
      Dst: "[java.io.IOException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].size()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.cat.CatalogFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceCertificatesAndCRLs(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store)"
    - "[java.util.Collections].emptyList()"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.cat.CatalogFile:156"
      Branch Sides:
      - BranchSide: "net.jsign.cat.CatalogFile:161"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.cat.CatalogFile:160"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "replaceCertificatesAndCRLs(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store)"
        - "replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:161,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.cat.CatalogFile:161,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - Src: "net.jsign.cat.CatalogFile:161,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    - Src: "net.jsign.cat.CatalogFile:162,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.cat.CatalogFile:163,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceCertificatesAndCRLs(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.cat.CatalogFile:165,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.cms.SignerInformation:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].getSID()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 4
    ICount: 30
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformationStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformationStore:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "get(java.lang.Object)"
        - "getSID()"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformationStore:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformationStore:-2"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "get(java.lang.Object)"
        - "getSID()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSID()"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.SignerInformationStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceCertificatesAndCRLs(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store,net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.util.Store"
    - "net.jsign.bouncycastle.util.Store"
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getDigestAlgorithms()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 44
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "getDigestAlgorithms()"
        - "createBerSetFromList(java.util.List)"
        - "getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "getContentType()"
        - "getEncapContentInfo()"
        - "getSignerInfos()"
        - "getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getDigestAlgorithms()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getAttributeCertificatesFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator:net.jsign.bouncycastle.util.Arrays$Iterator:net.jsign.commons.io.function.IOStream$1:net.jsign.log4j.ThreadContext$EmptyIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator:net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "hasNext()"
        - "<init>()"
        - "next()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSUtils].getCRLsFromStore(net.jsign.bouncycastle.util.Store)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Store"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSUtils:-2"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "next()"
        - "getInstance(java.lang.Object)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "getMatches(net.jsign.bouncycastle.util.Selector)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Store].getMatches(net.jsign.bouncycastle.util.Selector)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].validateInfoFormat(net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getDigestAlgorithms()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionUses: 2
    ICount: 24
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 7
    ICount: 21
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.cat.CatalogFile].save()"
    functionSourceFile: "net.jsign.cat.CatalogFile"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].truncate(long)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.cat.CatalogFile:172,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.cat.CatalogFile:173,1"
      Dst: "[java.nio.channels.SeekableByteChannel].truncate(long)"
    - Src: "net.jsign.cat.CatalogFile:174,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    - Src: "net.jsign.cat.CatalogFile:174,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.cat.CatalogFile:174,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].init(net.jsign.bouncycastle.crypto.KeyGenerationParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.KeyGenerationParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getRandom()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.KeyGenerationParameters].getStrength()"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CipherKeyGenerator].generateKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CipherKeyGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CipherKeyGenerator:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOConsumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22:-1,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].lambda$toByteArray$0(net.jsign.commons.io.output.ThresholdingOutputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22:-1,1"
      Dst: "[net.jsign.commons.io.IOUtils].lambda$toByteArray$0(net.jsign.commons.io.output.ThresholdingOutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lambda$toByteArray$0(net.jsign.commons.io.output.ThresholdingOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.ThresholdingOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESCBCModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].throwCauseAsRuntimeException()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].getOutputSize(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCBCModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].throwCauseAsRuntimeException()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].getOutputSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].throwCauseAsRuntimeException()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[java.lang.Object].clone()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].processPacket(boolean,byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 9
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3].get(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeEntropySource].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].modulus()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeEntropySource:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].hasNativeService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeEntropySource].modulus()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier].multiplyPositive(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].generateCompactWindowNaf(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[java.lang.Math].abs(int)"
    - "[net.jsign.bouncycastle.util.Integers].numberOfLeadingZeros(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].getWindowSize(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].precompute(net.jsign.bouncycastle.math.ec.ECPoint,int,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].generateCompactWindowNaf(int,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Integers].numberOfLeadingZeros(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].timesPow2(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WNafL2RMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreComp()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getPreCompNeg()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WNafPreCompInfo].getWidth()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Integers].numberOfLeadingZeros(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Integers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Integers:-1,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "gte(int,int[],int[])"
        - "subFrom(int,int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "gte(int,int[],int[])"
        - "subFrom(int,int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].half(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "sub(int,int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 1
    ICount: 59
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "addPInvTo(int[])"
        - "incAt(int,int[],int)"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 177
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "incAt(int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrType()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttributeValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toArray()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.CertificateUtils].<init>()"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -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.jsign.CertificateUtils:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.CertificateUtils].getChainComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:44,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.CertificateUtils:45,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.CertificateUtils:46,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - Src: "net.jsign.CertificateUtils:47,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[net.jsign.CertificateUtils].getChainComparator()"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.CertificateUtils:50,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.CertificateUtils].getChainComparator()"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Comparator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.CertificateUtils$getBasicConstraints__53].bootstrap$()"
    - "[java.util.Comparator].comparing(java.util.function.Function)"
    - "[net.jsign.CertificateUtils$getNotBefore__54].bootstrap$()"
    - "[java.util.Comparator].reverseOrder()"
    - "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - "[net.jsign.CertificateUtils$getSubjectX500Principal__55].bootstrap$()"
    - "[net.jsign.CertificateUtils$getName__56].bootstrap$()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[net.jsign.CertificateUtils$getBasicConstraints__53].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[java.util.Comparator].comparing(java.util.function.Function)"
    - Src: "net.jsign.CertificateUtils:58,1"
      Dst: "[net.jsign.CertificateUtils$getNotBefore__54].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[java.util.Comparator].reverseOrder()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[java.util.Comparator].thenComparing(java.util.function.Function,java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[net.jsign.CertificateUtils$getSubjectX500Principal__55].bootstrap$()"
    - Src: "net.jsign.CertificateUtils:59,1"
      Dst: "[net.jsign.CertificateUtils$getName__56].bootstrap$()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.SignedData"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    functionUses: 2
    ICount: 24
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].calculateVersion(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 62
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getTagNo()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "<init>(long)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 30
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].checkForVersion3(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getVersion()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "hasValue(int)"
        - "getVersion()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "hasValue(int)"
        - "getVersion()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getVersion()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].hasValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 62
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getDigestAlgorithms()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCertificates()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getCRLs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].isDefiniteLength()"
    functionUses: 111
    ICount: 54
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.SignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.SignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "isDefiniteLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].isDefiniteLength()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$700(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    functionUses: 6
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "fetchEntropy(byte[],int,int)"
        - "access$700(long)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "fetchEntropy(byte[],int,int)"
        - "access$700(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$700(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$700(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].sleep(long)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].sleep(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].sleep(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].privilegedRead(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].isPredictionResistant()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$700(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    functionUses: 6
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "fetchEntropy(byte[],int,int)"
        - "access$700(long)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "fetchEntropy(byte[],int,int)"
        - "access$700(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$700(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].fetchEntropy(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-2"
        BranchSideFuncs:
        - "access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider].access$800(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3:-1,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].entropySize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$CalendarReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$CalendarReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$CalendarReader:134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$CalendarReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$CalendarReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Readers].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[java.util.Calendar].setTime(java.util.Date)"
    - "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$CalendarReader:143"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$CalendarReader:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$CalendarReader:149"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$CalendarReader:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers$CalendarReader:154"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$CalendarReader:163"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$CalendarReader:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers$CalendarReader:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:142,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:145,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:147,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:147,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:149,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:151,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:156,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:156,1"
      Dst: "[net.jsign.json-io.util.io.Readers].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:159,1"
      Dst: "[net.jsign.json-io.util.io.Readers].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:160,1"
      Dst: "[java.util.Calendar].setTime(java.util.Date)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:161,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:165,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:165,1"
      Dst: "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:171,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:171,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$CalendarReader:171,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTarget()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].classForName(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:905,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:338,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:910,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].newInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonReader$ClassFactoryEx].newInstance(java.lang.Class,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonReader$ClassFactory].newInstance(java.lang.Class)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.MetaUtils].newInstance(java.lang.Class)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonReader:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:929"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:923"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonReader:924"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonReader:927"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:915,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.JsonReader:915,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:917,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:920,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.JsonReader:921,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonReader:922,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$ClassFactoryEx].newInstance(java.lang.Class,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.JsonReader:926,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$ClassFactory].newInstance(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.JsonReader:928,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:928,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonReader:928,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:928,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonReader:928,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonReader:930,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].newInstance(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].newInstance(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    - "[java.lang.Class].isInterface()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils$Unsafe].allocateInstance(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Boolean].booleanValue()"
    - "[net.jsign.json-io.util.io.MetaUtils].fillArgs(java.lang.Class[],boolean)"
    - "[net.jsign.json-io.util.io.MetaUtils].newInstanceEx(java.lang.Class)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:464"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:464"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:468"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:472"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:471"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:472"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:476"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:475"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:476"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:480"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:479"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:480"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:484"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:483"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:484"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:488"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:487"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:488"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:492"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:491"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:492"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:498"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:497"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:499"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:545"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:544"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:503"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:515"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:503"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:515"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:516"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:521"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:520"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:523"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:527"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:526"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:523"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:534"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:464,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:466,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:468,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:470,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:474,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:478,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:482,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:486,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:488,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:489,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:492,1"
      Dst: "[java.lang.Class].isInterface()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:494,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:494,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:494,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:494,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:494,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:498,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:507,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils$Unsafe].allocateInstance(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:512,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:522,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:527,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils:534,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:534,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].fillArgs(java.lang.Class[],boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:545,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].newInstanceEx(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:546,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$Unsafe].allocateInstance(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$Unsafe"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1075"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1075"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1074"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1080"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1080"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1079"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1085"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1071"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1070"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1086"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1085"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1071,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1075,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1076,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1076,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1076,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1076,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.MetaUtils$Unsafe:1086,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].fillArgs(java.lang.Class[],boolean)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Class[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Date].<init>()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.Calendar].getInstance()"
    - "[java.util.TimeZone].getDefault()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.System].currentTimeMillis()"
    - "[java.sql.Timestamp].<init>(long)"
    - "[java.sql.Date].<init>(long)"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Class].isArray()"
    functionUses: 0
    ICount: 143
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:725"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:728"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:729"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:732"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:733"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:738"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:739"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:742"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:743"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:746"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:747"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:750"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:751"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:754"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:755"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:758"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:759"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:762"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:766"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:767"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:771"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:775"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:778"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:779"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:782"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:783"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:786"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:787"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:791"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:794"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:798"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:799"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:802"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:803"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:806"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:807"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:810"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:811"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:821"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:822"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:825"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:826"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:831"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:722"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:723"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:725,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:727,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:733,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:745,1"
      Dst: "[java.util.Date].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:747,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:749,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:753,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:757,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:761,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:765,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:773,1"
      Dst: "[java.util.Calendar].getInstance()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:777,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:789,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:793,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:805,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:805,1"
      Dst: "[java.sql.Timestamp].<init>(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:809,1"
      Dst: "[java.sql.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:815,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:824,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:826,1"
      Dst: "[java.lang.Class].isArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 54
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Byte].parseByte(java.lang.String)"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.Number].byteValue()"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.Number].doubleValue()"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    - "[java.lang.Float].valueOf(float)"
    - "[java.lang.Number].floatValue()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Number].intValue()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Number].longValue()"
    - "[java.lang.Short].parseShort(java.lang.String)"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Number].shortValue()"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 232
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:854"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:857"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:861"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:860"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:863"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:867"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:866"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:878"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:877"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:867"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:874"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:873"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:876"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:880"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:879"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:902"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:880"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:884"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:883"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:884"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:897"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:896"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:886"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:890"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:889"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:891"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:895"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:894"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:897"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:905"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:904"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:916"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:915"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:908"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:912"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:911"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:914"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:929"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:928"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:921"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:925"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:924"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:927"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:931"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:930"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:942"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:941"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:931"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:934"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:944"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:943"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:955"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:954"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:944"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:947"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:951"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:950"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:957"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:968"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:967"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:957"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:960"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:964"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:963"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:968"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:979"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:978"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:974"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:973"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:974"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:979"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:983"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:982"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:983"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:990"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:854"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:856,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:857,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].parseByte(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:882,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:886,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:895,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:914,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:927,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:940,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:953,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].parseShort(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:966,1"
      Dst: "[java.lang.Number].shortValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:972,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:981,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:985,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:990,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:994,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 96
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:435"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:434,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:435,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:437,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$DateReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[net.jsign.json-io.util.io.Readers].access$0()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$1()"
    - "[net.jsign.json-io.util.io.Readers].access$2()"
    - "[net.jsign.json-io.util.io.Readers].access$3()"
    - "[net.jsign.json-io.util.io.Readers].access$4()"
    - "[net.jsign.json-io.util.io.Readers].access$5()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Readers].access$6()"
    - "[java.lang.String].toLowerCase()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].access$7()"
    - "[java.util.regex.Matcher].groupCount()"
    - "[net.jsign.json-io.util.io.Readers].access$8()"
    - "[net.jsign.json-io.util.io.Readers].access$9()"
    - "[java.lang.String].length()"
    - "[net.jsign.json-io.util.io.Readers].access$10()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Calendar].getInstance()"
    - "[java.util.Calendar].clear()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.util.Calendar].set(int,int,int)"
    - "[java.util.Calendar].set(int,int,int,int,int,int)"
    - "[java.util.Calendar].set(int,int)"
    - "[java.util.Calendar].getTime()"
    functionUses: 0
    ICount: 215
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:211"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:216"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:231"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:239"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:249"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:251"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:261"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:269"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:271"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:274"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:285"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:294"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:306"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:300"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:308"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:319"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:313"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:321"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:331"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:325"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:336"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:337"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:343"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:346"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:350"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:351"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:354"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:362"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:374"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:364"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:369"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:380"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:379"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:384"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:383"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:387"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:388"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:400"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:403"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:404"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:407"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$DateReader:408"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$DateReader:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:210,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:211,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$0()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:217,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:221,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:223,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:226,1"
      Dst: "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:230,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$1()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:240,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$2()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:250,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$3()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:260,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$4()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:270,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$5()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:273,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$6()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:287,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:293,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$7()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:300,1"
      Dst: "[java.util.regex.Matcher].groupCount()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:307,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$8()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:320,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$9()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:343,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:345,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$10()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:354,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:360,1"
      Dst: "[java.util.Calendar].getInstance()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:361,1"
      Dst: "[java.util.Calendar].clear()"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:364,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:366,1"
      Dst: "[java.util.Calendar].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:375,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:390,1"
      Dst: "[java.util.Calendar].set(int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:414,1"
      Dst: "[java.util.Calendar].set(int,int,int,int,int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:415,1"
      Dst: "[java.util.Calendar].set(int,int)"
    - Src: "net.jsign.json-io.util.io.Readers$DateReader:417,1"
      Dst: "[java.util.Calendar].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 25
    BBCount: 58
  - functionName: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.math.BigDecimal].toBigInteger()"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Number].doubleValue()"
    - "[java.math.BigDecimal].<init>(double)"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers:626"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:629"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:634"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:633"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:634"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:650"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:649"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:637"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:643"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:642"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:650"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:654"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:655"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:658"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:657"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:656"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:659"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:660"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:659"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:662"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:663"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:663"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:664"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:664"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:667"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:637,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers:637,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:643,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:643,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:647,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.Readers:653,1"
      Dst: "[java.math.BigDecimal].toBigInteger()"
    - Src: "net.jsign.json-io.util.io.Readers:657,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.Readers:661,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "net.jsign.json-io.util.io.Readers:661,1"
      Dst: "[java.math.BigDecimal].<init>(double)"
    - Src: "net.jsign.json-io.util.io.Readers:666,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:668,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 25
  - functionName: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigDecimal"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.math.BigDecimal].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.math.BigDecimal].<init>(java.math.BigInteger)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers:730"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:733"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:734"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:738"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:737"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:738"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:754"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:753"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:741"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:747"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:746"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:754"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:761"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:760"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:759"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:762"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:765"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:764"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers:763"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers:766"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:741,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers:741,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers:747,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:747,1"
      Dst: "[java.math.BigDecimal].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:751,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.Readers:756,1"
      Dst: "[java.math.BigDecimal].<init>(java.math.BigInteger)"
    - Src: "net.jsign.json-io.util.io.Readers:760,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.Readers:765,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.Readers:767,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 24
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].newInstanceEx(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[net.jsign.json-io.util.io.MetaUtils].tryOtherConstruction(java.lang.Class)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:563"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:567"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:562,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils:565,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils:565,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:568,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].tryOtherConstruction(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].tryOtherConstruction(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredConstructors()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[net.jsign.json-io.util.io.MetaUtils$2].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - "[java.lang.reflect.Constructor].getParameterTypes()"
    - "[net.jsign.json-io.util.io.MetaUtils].fillArgs(java.lang.Class[],boolean)"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.MetaUtils$Unsafe].allocateInstance(java.lang.Class)"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:591"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:596"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:630"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:597"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:596"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:648"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:647"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:668"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:677"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:590,1"
      Dst: "[java.lang.Class].getDeclaredConstructors()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:593,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:593,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:593,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:593,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:593,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:597,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils:598,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils$2].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:598,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:630,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:630,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:633,1"
      Dst: "[java.lang.reflect.Constructor].setAccessible(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:637,1"
      Dst: "[java.lang.reflect.Constructor].getParameterTypes()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:638,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].fillArgs(java.lang.Class[],boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:641,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.MetaUtils:641,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:630,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:672,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils$Unsafe].allocateInstance(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.json-io.util.io.MetaUtils$2].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils$2"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.MetaUtils$2:598,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setTarget(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].configure()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBEndomorphism].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Config].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$300(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 59
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getEncryptionAlgName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].fixDigestAlgID(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].setSigningEncryptionAlgorithmMapping(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedHelper].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedHelper].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].addEntries(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 59
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].size()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 27
    EdgeCount: 122
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "toASN1Primitive()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getAttributeCertificates(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getBaseUniversal(boolean,int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.AttributeCertificate)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getCRLs(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.CertificateList].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CRLHolder].<init>(net.jsign.bouncycastle.asn1.x509.CertificateList)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedHelper].getOtherRevocationInfo(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Store"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag(int)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedHelper:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjects()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hasContextTag(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedHelper:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfoFormat()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].getInfo()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.CollectionStore].<init>(java.util.Collection)"
    functionSourceFile: "net.jsign.bouncycastle.util.CollectionStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.CollectionStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultCMSSignatureEncryptionAlgorithmFinder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    - "net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setDirectSignature(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setUnsignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSAttributeTableGenerator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].setAssociatedCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].setAssociatedCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.SignerIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    functionUses: 1
    ICount: 42
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].createGenerator(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.cms.SignerIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.operator.ContentSigner"
    - "net.jsign.bouncycastle.asn1.cms.SignerIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    functionUses: 1
    ICount: 42
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-2"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>()"
        - "find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "getAlgorithmIdentifier()"
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].<init>(net.jsign.bouncycastle.asn1.cms.SignerIdentifier,net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.operator.DigestCalculator,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X25519].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$X25519:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].fromUTF8ByteArray(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.UTF8:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].fromUTF8ByteArray(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.UTF8].transcodeToUTF16(byte[],int,int,char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.UTF8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.UTF8:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.UTF8:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 22
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toUTF8ByteArray(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toUTF8ByteArray(char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toUTF8ByteArray(char[],java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toByteArray(char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].toByteArray(java.lang.String,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].constantTimeAreEqual(java.lang.String,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].fromByteArray(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].asCharArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].asCharArray(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].split(java.lang.String,char)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].newList()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.util.StringList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.Strings:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>(net.jsign.bouncycastle.util.Strings$1)"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings$StringListImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Strings$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Strings$StringListImpl:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings$StringListImpl].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIterations()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 1
    ICount: 81
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1].fromImplicitConstructed(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1BitString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1BitString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.Certificate[]"
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.DigestAlgorithm].getDefault()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:126"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:126"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:122,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:102,1"
      Dst: "[net.jsign.DigestAlgorithm].getDefault()"
    - Src: "net.jsign.AuthenticodeSigner:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.security.KeyStore"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getDefault()"
    - "[java.lang.Object].<init>()"
    - "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - "[java.security.KeyStore].getProvider()"
    - "[java.security.Provider].getName()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 41
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:143"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:147"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:150"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:151"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:150"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:150"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:141,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:102,1"
      Dst: "[net.jsign.DigestAlgorithm].getDefault()"
    - Src: "net.jsign.AuthenticodeSigner:142,1"
      Dst: "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.AuthenticodeSigner:144,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:147,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.AuthenticodeSigner:147,1"
      Dst: "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - Src: "net.jsign.AuthenticodeSigner:149,1"
      Dst: "[java.security.KeyStore].getProvider()"
    - Src: "net.jsign.AuthenticodeSigner:150,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.AuthenticodeSigner:150,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.TimestampingMode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:221,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamper(net.jsign.timestamp.Timestamper)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.Timestamper"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:277"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:280"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].getAlgorithm()"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getAlgorithm()"
    - "[net.jsign.jca.SigningServicePrivateKey].getAlgorithm()"
    - "[java.security.Key].getAlgorithm()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:299"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:301"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:300"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:301"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:303"
        BranchSideFuncs:
        - "getAlgorithm()"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:301,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:301,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:302,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProvider(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:317,1"
      Dst: "[java.security.Security].getProvider(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:317,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 352
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.appx.APPXFile].validate(java.security.cert.Certificate)"
    - "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - "[net.jsign.mscab.MSCabinetFile].getSignatures()"
    - "[net.jsign.script.JScript].getSignatures()"
    - "[net.jsign.script.PowerShellXMLScript].getSignatures()"
    - "[net.jsign.cat.CatalogFile].getSignatures()"
    - "[net.jsign.script.WindowsScript].getSignatures()"
    - "[net.jsign.msi.MSIFile].getSignatures()"
    - "[net.jsign.script.VBScript].getSignatures()"
    - "[net.jsign.appx.APPXFile].getSignatures()"
    - "[net.jsign.script.PowerShellScript].getSignatures()"
    - "[net.jsign.nuget.NugetFile].getSignatures()"
    - "[net.jsign.navx.NAVXFile].getSignatures()"
    - "[net.jsign.pe.PEFile].getSignatures()"
    - "[net.jsign.script.SignableScript].getSignatures()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.script.PowerShellScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.mscab.MSCabinetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.appx.APPXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.PowerShellXMLScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.JScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.cat.CatalogFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.VBScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.WindowsScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.navx.NAVXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.pe.PEFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.msi.MSIFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].save()"
    - "[net.jsign.script.VBScript].save()"
    - "[net.jsign.script.PowerShellXMLScript].save()"
    - "[net.jsign.appx.APPXFile].save()"
    - "[net.jsign.script.PowerShellScript].save()"
    - "[net.jsign.msi.MSIFile].save()"
    - "[net.jsign.script.SignableScript].save()"
    - "[net.jsign.script.WindowsScript].save()"
    - "[net.jsign.navx.NAVXFile].save()"
    - "[net.jsign.cat.CatalogFile].save()"
    - "[net.jsign.script.JScript].save()"
    - "[net.jsign.mscab.MSCabinetFile].save()"
    - "[net.jsign.pe.PEFile].save()"
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 1
    ICount: 28
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:357"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:364"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:372"
        BranchSideFuncs:
        - "getSignatures()"
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Branch String: "net.jsign.AuthenticodeSigner:366"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:353,1"
      Dst: "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:356,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.AuthenticodeSigner:357,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.AuthenticodeSigner:358,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:362,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:372,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:373,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 384
    functionDepth: 14
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.cat.CatalogFile].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.Signable].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.nuget.NugetFile].createSignedContent(net.jsign.DigestAlgorithm)"
    - "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - "[net.jsign.timestamp.Timestamper].create(net.jsign.timestamp.TimestampingMode)"
    - "[net.jsign.timestamp.Timestamper].setURLs(java.lang.String[])"
    - "[net.jsign.timestamp.Timestamper].setRetries(int)"
    - "[net.jsign.timestamp.Timestamper].setRetryWait(int)"
    - "[net.jsign.timestamp.RFC3161Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.timestamp.Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    functionUses: 1
    ICount: 36
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:393"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:410"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:395"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:399"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "create(net.jsign.timestamp.TimestampingMode)"
        - "isAuthenticode(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:398"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:397"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:395"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "create(net.jsign.timestamp.TimestampingMode)"
        - "isAuthenticode(java.lang.String)"
    - Branch String: "net.jsign.AuthenticodeSigner:399"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:402"
        BranchSideFuncs:
        - "setURLs(java.lang.String[])"
      - BranchSide: "net.jsign.AuthenticodeSigner:401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:402"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:405"
        BranchSideFuncs:
        - "setRetries(int)"
      - BranchSide: "net.jsign.AuthenticodeSigner:404"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:405"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:408"
        BranchSideFuncs:
        - "setRetryWait(int)"
      - BranchSide: "net.jsign.AuthenticodeSigner:407"
        BranchSideFuncs:
        - "timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:385,1"
      Dst: "[net.jsign.Signable].createSignedContent(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.AuthenticodeSigner:386,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    - Src: "net.jsign.AuthenticodeSigner:387,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - Src: "net.jsign.AuthenticodeSigner:390,1"
      Dst: "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:396,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - Src: "net.jsign.AuthenticodeSigner:396,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:397,1"
      Dst: "[net.jsign.timestamp.Timestamper].create(net.jsign.timestamp.TimestampingMode)"
    - Src: "net.jsign.AuthenticodeSigner:400,1"
      Dst: "[net.jsign.timestamp.Timestamper].setURLs(java.lang.String[])"
    - Src: "net.jsign.AuthenticodeSigner:403,1"
      Dst: "[net.jsign.timestamp.Timestamper].setRetries(int)"
    - Src: "net.jsign.AuthenticodeSigner:406,1"
      Dst: "[net.jsign.timestamp.Timestamper].setRetryWait(int)"
    - Src: "net.jsign.AuthenticodeSigner:408,1"
      Dst: "[net.jsign.timestamp.Timestamper].timestamp(net.jsign.DigestAlgorithm,net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[net.jsign.AuthenticodeSigner].createSignedDataGenerator(net.jsign.bouncycastle.cms.CMSTypedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContentType()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].<init>()"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addCertificates(net.jsign.bouncycastle.util.Store)"
    - "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
    - "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    functionUses: 1
    ICount: 21
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:416"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:415"
        BranchSideFuncs:
        - "addCertificates(net.jsign.bouncycastle.util.Store)"
        - "createSignerInfoGenerator()"
        - "<init>(java.util.Collection)"
        - "removeRoot(java.security.cert.Certificate[])"
        - "addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
      - BranchSide: "net.jsign.AuthenticodeSigner:414"
        BranchSideFuncs:
        - "getId()"
        - "<init>()"
        - "getContentType()"
        - "isAuthenticode(java.lang.String)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.AuthenticodeSigner:415,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeObjectIdentifiers].isAuthenticode(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:416,1"
      Dst: "[net.jsign.asn1.authenticode.AuthenticodeSignedDataGenerator].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:416,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaCertStore].<init>(java.util.Collection)"
    - Src: "net.jsign.AuthenticodeSigner:417,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addCertificates(net.jsign.bouncycastle.util.Store)"
    - Src: "net.jsign.AuthenticodeSigner:418,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    - Src: "net.jsign.AuthenticodeSigner:418,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].addSignerInfoGenerator(net.jsign.bouncycastle.cms.SignerInfoGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.AuthenticodeSigner].createSignerInfoGenerator()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.SignerInfoGenerator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    - "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
    - "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$2].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getAlgorithmIdentifier()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    - "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:426"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:429"
        BranchSideFuncs:
        - "setProvider(java.security.Provider)"
      - BranchSide: "net.jsign.AuthenticodeSigner:428"
        BranchSideFuncs:
        - "build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
        - "<init>(net.jsign.AuthenticodeSigner)"
        - "<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
        - "<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
        - "<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
        - "build()"
        - "createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
        - "build(java.security.PrivateKey)"
        - "<init>()"
        - "<init>(java.security.cert.X509Certificate)"
        - "setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
        - "getAlgorithmIdentifier()"
        - "createAuthenticatedAttributes()"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:425,1"
      Dst: "[net.jsign.AuthenticodeSigner].getSignatureAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:425,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:427,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].setProvider(java.security.Provider)"
    - Src: "net.jsign.AuthenticodeSigner:429,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - Src: "net.jsign.AuthenticodeSigner:431,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:431,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - Src: "net.jsign.AuthenticodeSigner:434,1"
      Dst: "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    - Src: "net.jsign.AuthenticodeSigner:434,1"
      Dst: "[net.jsign.bouncycastle.cms.DefaultSignedAttributeTableGenerator].<init>(net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.AuthenticodeSigner:435,1"
      Dst: "[net.jsign.asn1.authenticode.FilteredAttributeTableGenerator].<init>(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier[])"
    - Src: "net.jsign.AuthenticodeSigner:438,1"
      Dst: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:441,1"
      Dst: "[net.jsign.AuthenticodeSigner$1].<init>(net.jsign.AuthenticodeSigner)"
    - Src: "net.jsign.AuthenticodeSigner:441,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider,net.jsign.bouncycastle.cms.CMSSignatureEncryptionAlgorithmFinder)"
    - Src: "net.jsign.AuthenticodeSigner:454,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setSignedAttributeGenerator(net.jsign.bouncycastle.cms.CMSAttributeTableGenerator)"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.bouncycastle.operator.ContentSigner].getAlgorithmIdentifier()"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:455,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].setContentDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:456,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGeneratorBuilder].build(net.jsign.bouncycastle.operator.ContentSigner,net.jsign.bouncycastle.cert.X509CertificateHolder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].removeRoot(java.security.cert.Certificate[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 465
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:468"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:471"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:470"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:471"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:478"
        BranchSideFuncs:
        - "isSelfSigned(java.security.cert.X509Certificate)"
      - BranchSide: "net.jsign.AuthenticodeSigner:477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:472"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:471"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "net.jsign.AuthenticodeSigner:470"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:466,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:469,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:472,1"
      Dst: "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.AuthenticodeSigner].isSelfSigned(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    - "[java.security.cert.X509Certificate].getIssuerDN()"
    - "[java.security.Principal].equals(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.cert.X509Certificate].getIssuerDN()"
    - Src: "net.jsign.AuthenticodeSigner:482,1"
      Dst: "[java.security.Principal].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].verify(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 485
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    - "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
    - "[net.jsign.bouncycastle.operator.OperatorException].getCause()"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.util.encoders.EncoderException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.util.encoders.DecoderException].getCause()"
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSAttributeTableGenerationException].getCause()"
    - "[net.jsign.bouncycastle.openssl.EncryptionException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Exception].getCause()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseWrapCipher$InvalidKeyOrParametersException].getCause()"
    - "[net.jsign.bouncycastle.util.io.pem.PemGenerationException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - "[net.jsign.bouncycastle.util.encoders.EncoderException].getCause()"
    - "[net.jsign.bouncycastle.openssl.PEMException].getCause()"
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].getCause()"
    - "[net.jsign.bouncycastle.pkcs.PKCSException].getCause()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ParsingException].getCause()"
    - "[net.jsign.bouncycastle.tsp.TSPIOException].getCause()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException].getCause()"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].getCause()"
    - "[net.jsign.bouncycastle.util.StoreException].getCause()"
    - "[net.jsign.bouncycastle.cms.CMSRuntimeException].getCause()"
    - "[net.jsign.bouncycastle.pkcs.PKCSIOException].getCause()"
    - "[net.jsign.bouncycastle.cert.CertIOException].getCause()"
    - "[net.jsign.bouncycastle.cert.CertException].getCause()"
    - "[net.jsign.bouncycastle.crypto.CryptoException].getCause()"
    - "[net.jsign.bouncycastle.crypto.io.CipherIOException].getCause()"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].getCause()"
    - "[net.jsign.bouncycastle.tsp.TSPException].getCause()"
    - "[java.security.cert.Certificate].getPublicKey()"
    - "[java.lang.Throwable].getCause()"
    - "[java.security.cert.X509Certificate].getBasicConstraints()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.SignatureException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 49
    EdgeCount: 62
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:497"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:502"
        BranchSideFuncs:
        - "verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
        - "<init>()"
        - "build(java.security.PublicKey)"
        - "getCause()"
        - "build()"
        - "bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
        - "<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
      - BranchSide: "net.jsign.AuthenticodeSigner:501"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:502"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:512"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:511"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:503"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:502"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:505"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:508"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:507"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:487,1"
      Dst: "[java.security.cert.Certificate].getPublicKey()"
    - Src: "net.jsign.AuthenticodeSigner:488,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:488,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].build()"
    - Src: "net.jsign.AuthenticodeSigner:489,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].<init>(net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    - Src: "net.jsign.AuthenticodeSigner:489,1"
      Dst: "[net.jsign.bouncycastle.cms.jcajce.JcaSignerInfoVerifierBuilder].build(java.security.PublicKey)"
    - Src: "net.jsign.AuthenticodeSigner:494,1"
      Dst: "[net.jsign.AuthenticodeSigner$lambda_verify_0__11].bootstrap$(net.jsign.bouncycastle.cms.SignerInformationVerifier)"
    - Src: "net.jsign.AuthenticodeSigner:494,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].verifySignatures(net.jsign.bouncycastle.cms.SignerInformationVerifierProvider,boolean)"
    - Src: "net.jsign.AuthenticodeSigner:497,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "net.jsign.AuthenticodeSigner:503,1"
      Dst: "[java.security.cert.X509Certificate].getBasicConstraints()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:506,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.AuthenticodeSigner:510,1"
      Dst: "[java.security.SignatureException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[net.jsign.AuthenticodeSigner].createAuthenticatedAttributes()"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 519
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.asn1.authenticode.SpcStatementType].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 30
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:520,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:522,1"
      Dst: "[net.jsign.asn1.authenticode.SpcStatementType].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:523,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.AuthenticodeSigner:525,1"
      Dst: "[net.jsign.asn1.authenticode.SpcSpOpusInfo].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - Src: "net.jsign.AuthenticodeSigner:528,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 538
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].replaceUnsignedAttributes(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(net.jsign.bouncycastle.cms.SignerInformation)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 52
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:542"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:545"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
      - BranchSide: "net.jsign.AuthenticodeSigner:544"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Branch String: "net.jsign.AuthenticodeSigner:546"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:550"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "<init>()"
        - "getAttrValues()"
    - Branch String: "net.jsign.AuthenticodeSigner:552"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:555"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getAttrValues()"
      - BranchSide: "net.jsign.AuthenticodeSigner:554"
        BranchSideFuncs:
        - "toASN1EncodableVector()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "toASN1Structure()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.AuthenticodeSigner:539,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.AuthenticodeSigner:541,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.AuthenticodeSigner:543,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:543,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:545,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:548,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.AuthenticodeSigner:548,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].add(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:551,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - Src: "net.jsign.AuthenticodeSigner:552,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.AuthenticodeSigner:553,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.AuthenticodeSigner:557,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].remove(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:557,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].toASN1EncodableVector()"
    - Src: "net.jsign.AuthenticodeSigner:558,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.AuthenticodeSigner:558,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.AuthenticodeSigner:560,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.AuthenticodeSigner:563,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].replaceUnsignedAttributes(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.asn1.cms.AttributeTable)"
    - Src: "net.jsign.AuthenticodeSigner:564,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(net.jsign.bouncycastle.cms.SignerInformation)"
    - Src: "net.jsign.AuthenticodeSigner:564,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].replaceSigners(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.SignerInformationStore)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.AuthenticodeSigner].createContentDigestAlgorithmIdentifier(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 576
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:578"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:577,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:577,1"
      Dst: "[net.jsign.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder].find(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.AuthenticodeSigner:578,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.AuthenticodeSigner:580,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.AuthenticodeSigner:580,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].lambda$verify$0(net.jsign.bouncycastle.cms.SignerInformationVerifier,net.jsign.bouncycastle.cms.SignerId)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 493
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformationVerifier"
    - "net.jsign.bouncycastle.cms.SignerId"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].<init>()"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.zip.ZipRecord].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:44,1"
      Dst: "[net.jsign.zip.ZipRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.ByteBuffer].getLong()"
    - "[java.nio.ByteBuffer].getShort()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    functionUses: 1
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:64"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:69"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:84"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:87"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:86"
        BranchSideFuncs: []
    - Branch String: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:87"
      Branch Sides:
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:61,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:61,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:62,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:63,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:64,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:65,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:68,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:72,1"
      Dst: "[java.nio.ByteBuffer].getLong()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:73,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:85,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:89,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[net.jsign.zip.Zip64EndOfCentralDirectoryRecord].toBuffer()"
    functionSourceFile: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].putLong(long)"
    - "[java.nio.ByteBuffer].putShort(short)"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 1
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:95,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:95,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:96,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:98,1"
      Dst: "[java.nio.ByteBuffer].putLong(long)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:99,1"
      Dst: "[java.nio.ByteBuffer].putShort(short)"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:107,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "net.jsign.zip.Zip64EndOfCentralDirectoryRecord:108,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.util.io.StreamOverflowException].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.util.io.StreamOverflowException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.util.io.StreamOverflowException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.spi.LoggerRegistry$WeakMapFactory:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].createInnerMap()"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.WeakHashMap].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory:77,1"
      Dst: "[java.util.WeakHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].createOuterMap()"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.WeakHashMap].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory:82,1"
      Dst: "[java.util.WeakHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory].putIfAbsent(java.util.Map,java.lang.String,net.jsign.log4j.spi.ExtendedLogger)"
    functionSourceFile: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.lang.String"
    - "net.jsign.log4j.spi.ExtendedLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.LoggerRegistry$WeakMapFactory:87,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].readFirst512(java.io.InputStream)"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:107"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:112"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:104,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].readFirst512(java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:104,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:107,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:109,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMaxRecordLength()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:109,1"
      Dst: "[net.jsign.poi.util.IOUtils].safelyAllocate(long,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:110,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.nio.ByteBuffer,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:115,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.nio.ByteBuffer,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:115,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(byte[])"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[net.jsign.poi.poifs.filesystem.FileMagic].valueOf(byte[])"
    - "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.NotOLE2FileException].<init>(java.lang.String)"
    - "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.util.HexDump].longToHex(long)"
    - "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - "[net.jsign.poi.util.IntegerField].<init>(int,byte[])"
    - "[net.jsign.poi.util.IntegerField].get()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 103
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:155"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:156"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:157"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:160"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:118,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:119,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:122,1"
      Dst: "[net.jsign.poi.poifs.filesystem.FileMagic].valueOf(byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:124,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:128,1"
      Dst: "[net.jsign.poi.poifs.filesystem.OfficeXmlFileException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:132,1"
      Dst: "[net.jsign.poi.poifs.filesystem.NotOLE2FileException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:143,1"
      Dst: "[net.jsign.poi.hssf.OldExcelFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:147,1"
      Dst: "[net.jsign.poi.util.HexDump].longToHex(long)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:148,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getLong(byte[],int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:160,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:160,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:164,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:164,1"
      Dst: "[net.jsign.poi.util.IntegerField].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].<init>(net.jsign.poi.poifs.common.POIFSBigBlockSize)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 175
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LongField].<init>(int,long,byte[])"
    - "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - "[net.jsign.poi.util.ShortField].<init>(int,short,byte[])"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getHeaderValue()"
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 1
    ICount: 62
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:176,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:181,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:184,1"
      Dst: "[net.jsign.poi.util.LongField].<init>(int,long,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:185,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:189,1"
      Dst: "[net.jsign.poi.util.ShortField].<init>(int,short,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:193,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getHeaderValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].readFirst512(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[])"
    - "[net.jsign.poi.poifs.storage.HeaderBlock].alertShortRead(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:214"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:217"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:213,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:215,1"
      Dst: "[net.jsign.poi.poifs.storage.HeaderBlock].alertShortRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[])"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:314,1"
      Dst: "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:339"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:342"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:341"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:340"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:339"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:343"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:346"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:338,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].alertShortRead(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.IOException"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:223"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:221,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:225,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:225,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].alertShortRead(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.IOException"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:223"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:221,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:223,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:225,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:225,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getPropertyStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setPropertyStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATStart()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getSBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 252
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setSBATBlockCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBATArray()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:300"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:298,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:301,1"
      Dst: "[net.jsign.poi.util.LittleEndian].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setBATArray(int[])"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:315"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:318"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:319"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:311,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:316,1"
      Dst: "[net.jsign.poi.util.LittleEndian].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATCount()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATCount(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getXBATIndex()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 341
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].setXBATStart(int)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 347
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.storage.HeaderBlock].writeData(java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.poifs.storage.HeaderBlock"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.storage.HeaderBlock:380"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.storage.HeaderBlock:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:369,1"
      Dst: "[net.jsign.poi.util.IntegerField].<init>(int,int,byte[])"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:377,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:380,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - Src: "net.jsign.poi.poifs.storage.HeaderBlock:381,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].<init>(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - "[net.jsign.bouncycastle.math.ec.ECPointMap].map(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setMappedPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ECEndomorphism].getPointMap()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPointMap].map(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setMappedPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setEndomorphism(net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].setMappedPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.EndoUtil$1].checkExisting(net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo,net.jsign.bouncycastle.math.ec.endo.ECEndomorphism)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo"
    - "net.jsign.bouncycastle.math.ec.endo.ECEndomorphism"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    - "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getEndomorphism()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.EndoUtil$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.EndoPreCompInfo].getMappedPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.navx.NAVXHeader].<init>()"
    functionSourceFile: "net.jsign.navx.NAVXHeader"
    linkageType: null
    functionLinenumber: -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.jsign.navx.NAVXHeader:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.navx.NAVXHeader].read(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "net.jsign.navx.NAVXHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.navx.NAVXHeader:51"
      Branch Sides:
      - BranchSide: "net.jsign.navx.NAVXHeader:54"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.navx.NAVXHeader:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.navx.NAVXHeader:57"
      Branch Sides:
      - BranchSide: "net.jsign.navx.NAVXHeader:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.navx.NAVXHeader:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.navx.NAVXHeader:46,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.navx.NAVXHeader:46,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.navx.NAVXHeader:47,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.navx.NAVXHeader:48,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.navx.NAVXHeader:50,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.navx.NAVXHeader:52,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.navx.NAVXHeader:54,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.util.List)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.util.List,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:92,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.util.List,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.util.List,net.jsign.commons.io.IOCase)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "net.jsign.commons.io.IOCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:105,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:106,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:107,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:108,1"
      Dst: "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:118,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:131,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String,net.jsign.commons.io.IOCase)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.commons.io.IOCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:143,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:144,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:146,1"
      Dst: "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "net.jsign.commons.io.IOCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    - "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:158,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:159,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:160,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:161,1"
      Dst: "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getName()"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:172,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:172,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:184,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toFileVisitResult(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:196,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:196,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:196,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].toFileVisitResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils$toString__181].bootstrap$()"
    - "[net.jsign.commons.io.file.PathUtils].getFileName(java.nio.file.Path,java.util.function.Function)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:937,1"
      Dst: "[net.jsign.commons.io.file.PathUtils$toString__181].bootstrap$()"
    - Src: "net.jsign.commons.io.file.PathUtils:937,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileName(java.nio.file.Path,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].getFileName(java.nio.file.Path,java.util.function.Function)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.util.function.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].getFileName()"
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:924"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:924"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:923"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:924"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:924,1"
      Dst: "[java.nio.file.Path].getFileName()"
    - Src: "net.jsign.commons.io.file.PathUtils:925,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].accept(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter$lambda_accept_0__57].bootstrap$(net.jsign.commons.io.filefilter.SuffixFileFilter,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].toString()"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].append(java.lang.Object[],java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:210,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:211,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:211,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:213,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].append(java.lang.Object[],java.lang.StringBuilder)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].lambda$accept$0(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOCase].checkEndsWith(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:200,1"
      Dst: "[net.jsign.commons.io.IOCase].checkEndsWith(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOCase].checkEndsWith(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOCase:153"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOCase:153"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:153"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:156"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOCase:155"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:157"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOCase:156,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.IOCase:157,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 160
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMulw(long[],long,long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "long"
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implCompactExt(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implCompactExt(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMulw(long[],long,long,long[],int)"
    functionUses: 1
    ICount: 160
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMulw(long[],long,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implCompactExt(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 5
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 9
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.raw.Interleave:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.raw.Interleave:-2"
        BranchSideFuncs:
        - "expand64To128(long,long[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "create64(int)"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].halfTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].halfTrace(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long[],int,int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand8to16(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].addTo(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hasFastTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].trace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].trace(long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].invert(long[],long[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].invert(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 27
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "create64(int)"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].sqrt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getRepresentation()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$8].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$8"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.util.DigestFactory$8:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$8].createClone(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory$8:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.SavableDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3Digest)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SHA3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].toBigInteger(int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    functionUses: 1
    ICount: 47
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].isOne(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].squareN(int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].eq(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].eq(int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Properties$1].run()"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProperty(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties$1:-1,1"
      Dst: "[java.security.Security].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].<init>(net.jsign.bouncycastle.asn1.tsp.Accuracy)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getSeconds()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getSeconds()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMillis()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMillis()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMillis()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMillis()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMicros()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMicros()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMicros()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMicros()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs:
        - "intValueExact()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].toString()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].format(int)"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMicros()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMillis()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getSeconds()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getSeconds()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMillis()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].format(int)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMicros()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getSeconds()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getSeconds()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getSeconds()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMillis()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMillis()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMillis()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].format(int)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].toString(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.Integer].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getMicros()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMicros()"
    - "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getMicros()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].getTimeComponent(net.jsign.bouncycastle.asn1.ASN1Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.GenTimeAccuracy].format(int)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.GenTimeAccuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].toString(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.GenTimeAccuracy:-1,1"
      Dst: "[java.lang.Integer].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].bootstrap$(net.jsign.commons.io.output.ProxyOutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOConsumer"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.ProxyOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].<init>(net.jsign.commons.io.output.ProxyOutputStream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1:-1,1"
      Dst: "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].<init>(net.jsign.commons.io.output.ProxyOutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].<init>(net.jsign.commons.io.output.ProxyOutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.ProxyOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].<init>(net.jsign.commons.io.output.ProxyOutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.ProxyOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ProxyOutputStream].handleIOException(java.io.IOException)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1:-1,1"
      Dst: "[net.jsign.commons.io.output.ProxyOutputStream].handleIOException(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ProxyOutputStream].handleIOException(java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.output.ProxyOutputStream"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 3
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].<init>(byte[],int,int)"
    - "[net.jsign.commons.io.build.AbstractOriginSupplier].checkOrigin()"
    - "[net.jsign.commons.io.build.AbstractOrigin$ReaderOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$CharSequenceOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$ByteArrayOrigin].getByteArray()"
    - "[net.jsign.commons.io.build.AbstractOrigin$InputStreamOrigin].getByteArray()"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.build.AbstractOriginSupplier].checkOrigin()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.build.AbstractOrigin].getByteArray()"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:108,1"
      Dst: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setByteArray(byte[])"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.build.AbstractOriginSupplier].setByteArray(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:113,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:114,1"
      Dst: "[net.jsign.commons.io.build.AbstractOriginSupplier].setByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setLength(int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:124"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].setOffset(int)"
    functionSourceFile: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:138"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder:139,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$2].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$2"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.util.DigestFactory$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory$2].createClone(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory$2:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.MD5Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD5Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].copyIn(net.jsign.bouncycastle.crypto.digests.MD5Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicLongWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$AtomicLongWriter:275,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicLongWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:279"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:282,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:283,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:287,1"
      Dst: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicLongWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:296,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:296,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicLongWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$AtomicLongWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$AtomicLongWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:296,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].toString()"
    - Src: "net.jsign.json-io.util.io.Writers$AtomicLongWriter:296,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$StringReader:429,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$StringReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$StringReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[java.lang.Object].toString()"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$StringReader:433"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringReader:437"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$StringReader:438"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringReader:442"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$StringReader:444"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$StringReader:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:438,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:438,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:440,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:444,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:446,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$StringReader:449,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].toBigInteger64(long[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].toBigInteger64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 5
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionUses: 55
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 10
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "implSquare(long[],long[])"
        - "createExt64()"
        - "reduce(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].halfTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].halfTrace(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].halfTrace(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].halfTrace(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addTo(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hasFastTrace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].trace()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].trace(long[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].trace(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].trace(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].invert(long[],long[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].invert(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].invert(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 36
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs:
        - "multiply(long[],long[],long[])"
        - "isZero64(long[])"
        - "squareN(long[],int,long[])"
        - "create64()"
        - "square(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareN(long[],int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].sqrt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].sqrt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].sqrt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].unshuffle(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getRepresentation()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].eq64(long[],long[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "eq64(long[],long[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].eq64(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].getDERSubStream()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.DEROutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-2"
        BranchSideFuncs:
        - "toASN1Primitive()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writePrimitive(net.jsign.bouncycastle.asn1.ASN1Primitive,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 10
    ICount: 6
    EdgeCount: 97
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writePrimitives(net.jsign.bouncycastle.asn1.ASN1Primitive[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 4
    ICount: 11
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-2"
        BranchSideFuncs:
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].<init>(net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:49,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:50,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].accept(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.NotFileFilter:62"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.NotFileFilter:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:62,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].accept(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.NotFileFilter:74"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.NotFileFilter:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:74,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - "[net.jsign.commons.io.filefilter.NotFileFilter].not(java.nio.file.FileVisitResult)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:86,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:86,1"
      Dst: "[net.jsign.commons.io.filefilter.NotFileFilter].not(java.nio.file.FileVisitResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].not(java.nio.file.FileVisitResult)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 1
    argTypes:
    - "java.nio.file.FileVisitResult"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.NotFileFilter:90"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.NotFileFilter:89"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].not(java.nio.file.FileVisitResult)"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 1
    argTypes:
    - "java.nio.file.FileVisitResult"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.NotFileFilter:90"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.NotFileFilter:89"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.NotFileFilter].toString()"
    functionSourceFile: "net.jsign.commons.io.filefilter.NotFileFilter"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.TrueFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.OrFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.NotFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.FalseFileFilter].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:100,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.io.filefilter.NotFileFilter:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard$Key].values()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.jca.OpenPGPCard$Key[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard$Key:43,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard$Key].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.jca.OpenPGPCard$Key"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard$Key:43,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard$Key].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.OpenPGPCard$Key:43,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.OpenPGPCard$Key].$values()"
    functionSourceFile: "net.jsign.jca.OpenPGPCard$Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.jca.OpenPGPCard$Key[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,int,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].engineGenerateSecret(java.security.spec.KeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "javax.crypto.SecretKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEParameters(javax.crypto.spec.PBEKeySpec,int,int,int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEParameters(javax.crypto.spec.PBEKeySpec,int,int,int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "int"
    - "int"
    - "int"
    - "int"
    - "javax.crypto.spec.PBEKeySpec"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEParameters(javax.crypto.spec.PBEKeySpec,int,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 5
    argTypes:
    - "javax.crypto.spec.PBEKeySpec"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedParameters(int,int)"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedParameters(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedParameters(int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedParameters(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.PBEParametersGenerator"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>()"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS5S1ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1PRF()"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256PRF()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA224PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA384PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_224PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_256PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_384PRF()"
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_512PRF()"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>()"
    functionUses: 0
    ICount: 182
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS5S1ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA224PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA384PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_224PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_256PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_384PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_512PRF()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 31
    BBCount: 41
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD2Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD2Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.MD2Digest].reset()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.MD2Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.MD2Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.MD2Digest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS5S1ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS5S1ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS5S1ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.macs.HMac"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].getByteLength(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.macs.HMac:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.MD5Digest].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA1PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA1Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].reset()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.TigerDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.TigerDigest].reset()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.TigerDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.TigerDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.TigerDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.TigerDigest:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA256PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.constraints.DefaultServiceProperties].<init>(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toUpperCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.GOST28147Engine:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.GOST3411Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 4
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.GOST3411Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA224PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA224Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA384PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA512PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_224PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_256PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_384PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createSHA3_512PRF()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.DigestFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.Digest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.DigestFactory:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].newInstance(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ExtendedDigest].getByteLength()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.generators.PKCS12ParametersGenerator:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    - "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.DigestFactory].createMD5()"
    - Src: "net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator].<init>(net.jsign.bouncycastle.crypto.Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.generators.OpenSSLPBEParametersGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "javax.crypto.spec.PBEKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS12PasswordToBytes(char[])"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS5PasswordToUTF8Bytes(char[])"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS5PasswordToBytes(char[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS12PasswordToBytes(char[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS5PasswordToUTF8Bytes(char[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].PKCS5PasswordToBytes(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 4
    argTypes:
    - "javax.crypto.spec.PBEKeySpec"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedMacParameters(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedMacParameters(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder].<init>(java.security.cert.X509Certificate)"
    functionSourceFile: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - "[java.security.cert.Certificate].getEncoded()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cert.jcajce.JcaX509CertificateHolder:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].<init>(net.jsign.bouncycastle.asn1.x509.Certificate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].values()"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.StandardLineSeparator[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StandardLineSeparator:28,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.StandardLineSeparator"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StandardLineSeparator:28,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StandardLineSeparator:52,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "net.jsign.commons.io.StandardLineSeparator:53,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].getBytes(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StandardLineSeparator:63,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].getString()"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StandardLineSeparator].$values()"
    functionSourceFile: "net.jsign.commons.io.StandardLineSeparator"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 0
    returnType: "net.jsign.commons.io.StandardLineSeparator[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].<init>()"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -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.jsign.PVK:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].parse(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].length()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].getChannel()"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:57,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.PVK:57,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.PVK:59,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.PVK:60,1"
      Dst: "[java.io.FileInputStream].getChannel()"
    - Src: "net.jsign.PVK:60,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.PVK:61,1"
      Dst: "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    - Src: "net.jsign.PVK:62,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.PVK:61,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.PVK].parse(java.nio.ByteBuffer,java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.PrivateKey"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].rewind()"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].get(byte[])"
    - "[java.nio.ByteBuffer].get()"
    - "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    - "[net.jsign.PVK].parseKey(byte[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:70"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:73"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:76"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:73"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:91"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:95"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:66,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.PVK:67,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    - Src: "net.jsign.PVK:69,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.PVK:71,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:74,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.PVK:74,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.PVK:80,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "net.jsign.PVK:83,1"
      Dst: "[java.nio.ByteBuffer].get()"
    - Src: "net.jsign.PVK:92,1"
      Dst: "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    - Src: "net.jsign.PVK:95,1"
      Dst: "[net.jsign.PVK].parseKey(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.PVK].decrypt(byte[],byte[],java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],int,int,java.lang.String)"
    - "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    - "[net.jsign.PVK].startsWith(byte[],byte[])"
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:104"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:109"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:108"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:112"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:116"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:99,1"
      Dst: "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    - Src: "net.jsign.PVK:102,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],int,int,java.lang.String)"
    - Src: "net.jsign.PVK:103,1"
      Dst: "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    - Src: "net.jsign.PVK:104,1"
      Dst: "[net.jsign.PVK].startsWith(byte[],byte[])"
    - Src: "net.jsign.PVK:109,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    - Src: "net.jsign.PVK:116,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.PVK].decrypt(javax.crypto.SecretKey,byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "javax.crypto.SecretKey"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Key].getAlgorithm()"
    - "[javax.crypto.Cipher].getInstance(java.lang.String)"
    - "[javax.crypto.Cipher].init(int,java.security.Key)"
    - "[javax.crypto.Cipher].doFinal(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:120,1"
      Dst: "[java.security.Key].getAlgorithm()"
    - Src: "net.jsign.PVK:120,1"
      Dst: "[javax.crypto.Cipher].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:121,1"
      Dst: "[javax.crypto.Cipher].init(int,java.security.Key)"
    - Src: "net.jsign.PVK:122,1"
      Dst: "[javax.crypto.Cipher].doFinal(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].deriveKey(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.security.MessageDigest].update(byte[])"
    - "[java.lang.String].getBytes()"
    - "[java.security.MessageDigest].digest()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:131"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:129,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:130,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    - Src: "net.jsign.PVK:132,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "net.jsign.PVK:134,1"
      Dst: "[java.security.MessageDigest].digest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.PVK].parseKey(byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[net.jsign.PVK].startsWith(byte[],byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].<init>(byte[],int,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].getInt()"
    - "[java.lang.String].valueOf(int)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    - "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[java.security.KeyFactory].getInstance(java.lang.String)"
    - "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:146"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.PVK:143,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.PVK:144,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.PVK:146,1"
      Dst: "[net.jsign.PVK].startsWith(byte[],byte[])"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.String].<init>(byte[],int,int)"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.PVK:147,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:150,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.PVK:150,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.PVK:152,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    - Src: "net.jsign.PVK:153,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "net.jsign.PVK:153,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.PVK:157,1"
      Dst: "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    - Src: "net.jsign.PVK:165,1"
      Dst: "[java.security.spec.RSAPrivateCrtKeySpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.PVK:166,1"
      Dst: "[java.security.KeyFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.PVK:168,1"
      Dst: "[java.security.KeyFactory].generatePrivate(java.security.spec.KeySpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.PVK].getBigInteger(java.nio.ByteBuffer,int)"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[net.jsign.PVK].reverse(byte[])"
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PVK:179,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "net.jsign.PVK:181,1"
      Dst: "[net.jsign.PVK].reverse(byte[])"
    - Src: "net.jsign.PVK:181,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PVK].reverse(byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:188"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:193"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.PVK].startsWith(byte[],byte[])"
    functionSourceFile: "net.jsign.PVK"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.PVK:201"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:207"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:206"
        BranchSideFuncs: []
    - Branch String: "net.jsign.PVK:202"
      Branch Sides:
      - BranchSide: "net.jsign.PVK:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.PVK:200"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProperty(java.lang.String)"
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$7:-1,1"
      Dst: "[java.security.Security].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].getSignatureTimestamps(net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestCalculatorProvider)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformation"
    - "net.jsign.bouncycastle.operator.DigestCalculatorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].getTimeStampInfo()"
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getHashAlgorithm()"
    - "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getMessageImprintDigest()"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].getTimeStampInfo()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getHashAlgorithm()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculatorProvider].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getOutputStream()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.DigestCalculator].getDigest()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getMessageImprintDigest()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].getAll(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 7
    ICount: 21
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs:
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.ArrayIndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getSignedData(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getCause()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].<init>(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    - "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getCerts()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.bouncycastle.cms.CMSException:net.jsign.log4j.ThreadContext$EmptyThreadContextStack].getUnderlyingException()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].size()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].size()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    functionUses: 1
    ICount: 83
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.tsp.TimeStampToken:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TimeStampToken:-2"
        BranchSideFuncs:
        - "getSignedContentTypeOID()"
        - "getSignedAttributes()"
        - "getSignedContent()"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
        - "next()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
        - "fromByteArray(byte[])"
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "getId()"
        - "getObjectAt(int)"
        - "iterator()"
        - "getCerts()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(java.lang.String)"
        - "getInstance(java.lang.Object)"
        - "<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
        - "getAttrValues()"
        - "write(java.io.OutputStream)"
        - "getUnderlyingException()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getCerts()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContentTypeOID()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    functionUses: 56
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "parseContents(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].parseContents(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPValidationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPValidationException:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedContent()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.cms.CMSTypedData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 64
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.MessageImprint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 42
    EdgeCount: 107
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 3
    ICount: 60
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.GeneralName:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "fromByteArray(byte[])"
        - "getInstance(java.lang.Object)"
        - "<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1IA5String].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.x509.GeneralName:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence:net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 47
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "getObjectAt(int)"
        - "<init>()"
        - "intValueExact()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.Accuracy:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].getContextInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "intValue(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValue(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 35
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].<init>(net.jsign.bouncycastle.asn1.tsp.TSTInfo)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.lang.String].indexOf(int)"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.util.TimeZone].getDefault()"
    - "[java.util.TimeZone].getID()"
    - "[java.text.DateFormat].parse(java.lang.String)"
    functionUses: 4
    ICount: 73
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-2"
        BranchSideFuncs:
        - "hasSeconds()"
        - "fromByteArray(byte[])"
        - "pruneFractionalSeconds(java.lang.String)"
        - "getTime()"
        - "calculateGMTDateFormat()"
        - "hasFractionalSeconds()"
        - "hasMinutes()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasFractionalSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasSeconds()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hasMinutes()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.SimpleTimeZone].<init>(int,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getTime()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].calculateGMTDateFormat()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getDefault()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].pruneFractionalSeconds(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 5
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].getCerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertID[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificate:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertID:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertID].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertID)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ess.ESSCertID"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].getCerts()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.ess.SigningCertificateV2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken$CertID].<init>(net.jsign.bouncycastle.asn1.ess.ESSCertIDv2)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ess.ESSCertIDv2"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampToken$CertID:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSException].getUnderlyingException()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampToken].getTimeStampInfo()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampToken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getHashAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashAlgorithm()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TimeStampTokenInfo].getMessageImprintDigest()"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    - Src: "net.jsign.bouncycastle.tsp.TimeStampTokenInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getHashedMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].validateCertificate(net.jsign.bouncycastle.cert.X509CertificateHolder)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cert.X509CertificateHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.x509.Certificate].getVersionNumber()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Certificate].getVersionNumber()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.X509CertificateHolder].getExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPValidationException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].isCritical()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getParsedValue()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].getDigestLength(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].getExtensionOIDs(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.tsp.TSPUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.tsp.TSPUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionOIDs()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.tsp.TSPUtil].addExtension(net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.tsp.TSPIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.tsp.TSPUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.tsp.TSPIOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator].addExtension(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtensionsGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].getExtnValue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extension].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extension:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.tsp.TSPIOException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.tsp.TSPIOException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.tsp.TSPIOException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseSecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].engineGenerateSecret(java.security.spec.KeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "javax.crypto.SecretKey"
    argCount: 1
    argTypes:
    - "java.security.spec.KeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - "[net.jsign.bouncycastle.jcajce.PBKDF2Key].<init>(char[],net.jsign.bouncycastle.crypto.CharToByteConverter)"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - "[javax.crypto.spec.PBEKeySpec].getKeyLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].getPrf()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].getDigestCode(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.PBKDF2Key].<init>(char[],net.jsign.bouncycastle.crypto.CharToByteConverter)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getKeyLength()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].getPrf()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].getDigestCode(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.jcajce.PBKDF2Key].<init>(char[],net.jsign.bouncycastle.crypto.CharToByteConverter)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.PBKDF2Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "net.jsign.bouncycastle.crypto.CharToByteConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(char[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF2Key:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.PBKDF2Key:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec].getPrf()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.PBKDF2KeySpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].getDigestCode(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2].access$000()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2].access$000()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEMacParameters(javax.crypto.spec.PBEKeySpec,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 4
    argTypes:
    - "javax.crypto.spec.PBEKeySpec"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedMacParameters(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].makePBEGenerator(int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util].convertPassword(int,javax.crypto.spec.PBEKeySpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].init(byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBE$Util:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PBEParametersGenerator].generateDerivedMacParameters(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,int,int,int,int,javax.crypto.spec.PBEKeySpec,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "int"
    - "int"
    - "int"
    - "int"
    - "javax.crypto.spec.PBEKeySpec"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - "[javax.crypto.spec.PBEKeySpec].getSalt()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getPassword()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].getSalt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].getDigestCode(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2].access$000()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2].access$000()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2:-1,1"
      Dst: "[java.security.spec.InvalidKeySpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.IntFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27].apply(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].lambda$new$1(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath$lambda_new_1__27:-1,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].lambda$new$1(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].lambda$new$1(int)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocumentPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1].<init>(java.lang.Class,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GraphicString].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser].<init>(net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.PEMKeyPairParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getHeaders()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].getValue()"
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - "[java.util.StringTokenizer].nextToken()"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decode(java.lang.String)"
    - "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].<init>(java.lang.String,byte[],byte[],net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    - "[net.jsign.bouncycastle.openssl.PEMKeyPairParser].parse(byte[])"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getHeaders()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemHeader].getName()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemHeader].getValue()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.util.StringTokenizer].nextToken()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decode(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].<init>(java.lang.String,byte[],byte[],net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMKeyPairParser].parse(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$KeyPairParser:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getHeaders()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemHeader].getName()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemHeader"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemHeader].getValue()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemHeader"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decode(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.DecoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.DecoderException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair].<init>(java.lang.String,byte[],byte[],net.jsign.bouncycastle.openssl.PEMKeyPairParser)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "byte[]"
    - "net.jsign.bouncycastle.openssl.PEMKeyPairParser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMEncryptedKeyPair:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].bootstrap$()"
    - "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].bootstrap$()"
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].bootstrap$()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Supplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25:-1,1"
      Dst: "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 2
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger$init__4].get()"
    - "[net.jsign.log4j.util.Strings$init__12].get()"
    - "[net.jsign.commons.io.IOUtils$byteArray__2].get()"
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].get()"
    - "[net.jsign.commons.io.IOUtils$charArray__3].get()"
    - "[java.util.function.Supplier].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.charset.CharsetEncoders:50"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.charset.CharsetEncoders:49"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:50,1"
      Dst: "[java.util.function.Supplier].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].toCharsetEncoder(java.nio.charset.CharsetEncoder,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 2
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.AbstractLogger$init__4].get()"
    - "[net.jsign.log4j.util.Strings$init__12].get()"
    - "[net.jsign.commons.io.IOUtils$byteArray__2].get()"
    - "[net.jsign.commons.io.charset.CharsetEncoders$lambda_toCharsetEncoder_0__25].get()"
    - "[net.jsign.commons.io.IOUtils$charArray__3].get()"
    - "[java.util.function.Supplier].get()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.charset.CharsetEncoders:50"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.charset.CharsetEncoders:49"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:50,1"
      Dst: "[java.util.function.Supplier].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].<init>()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.charset.CharsetEncoders:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetEncoders].lambda$toCharsetEncoder$0()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetEncoders"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newEncoder()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.nio.charset.Charset].newEncoder()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.charset.CharsetEncoders:38,1"
      Dst: "[java.nio.charset.Charset].newEncoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy(int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils$RelativeSortedPaths].<init>(java.nio.file.Path,java.nio.file.Path,int,java.nio.file.LinkOption[],java.nio.file.FileVisitOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "int"
    - "java.nio.file.LinkOption[]"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].access$000(java.nio.file.Path,int,java.nio.file.FileVisitOption[])"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - "[java.util.List].size()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].relativizeDirectories(java.nio.file.Path,boolean,java.util.Comparator)"
    - "[java.util.List].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].relativizeFiles(java.nio.file.Path,boolean,java.util.Comparator)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:119"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:119"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:121"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:123"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:126"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:126"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:127"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:127"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:132"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:136"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:114,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:124,1"
      Dst: "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:129,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].access$000(java.nio.file.Path,int,java.nio.file.FileVisitOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:131,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:134,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].relativizeDirectories(java.nio.file.Path,boolean,java.util.Comparator)"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:136,1"
      Dst: "[java.util.List].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:139,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].relativizeFiles(java.nio.file.Path,boolean,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[net.jsign.commons.io.file.PathUtils$RelativeSortedPaths].<init>(java.nio.file.Path,java.nio.file.Path,int,java.nio.file.LinkOption[],java.nio.file.FileVisitOption[],net.jsign.commons.io.file.PathUtils$1)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "int"
    - "java.nio.file.LinkOption[]"
    - "java.nio.file.FileVisitOption[]"
    - "net.jsign.commons.io.file.PathUtils$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils$RelativeSortedPaths].<init>(java.nio.file.Path,java.nio.file.Path,int,java.nio.file.LinkOption[],java.nio.file.FileVisitOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils$RelativeSortedPaths:95,1"
      Dst: "[net.jsign.commons.io.file.PathUtils$RelativeSortedPaths].<init>(java.nio.file.Path,java.nio.file.Path,int,java.nio.file.LinkOption[],java.nio.file.FileVisitOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 161
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 82
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat].zero64(int,long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 117
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].zero64(int,long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addBothTo(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecompAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addOne(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.Certificate[]"
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:54,1"
      Dst: "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.security.KeyStore"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:68,1"
      Dst: "[net.jsign.AuthenticodeSigner].<init>(java.security.KeyStore,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withProgramName(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:78,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withProgramURL(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:88,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withSignaturesReplaced(boolean)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:99,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestamping(boolean)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:109,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.TimestampingMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:120,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.TimestampingMode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAutority(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:132,1"
      Dst: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:157,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:221,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAutority(java.lang.String[])"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:145,1"
      Dst: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:169,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:157,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:169,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestamper(net.jsign.timestamp.Timestamper)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.Timestamper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestamper(net.jsign.timestamp.Timestamper)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:179,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestamper(net.jsign.timestamp.Timestamper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamper(net.jsign.timestamp.Timestamper)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.Timestamper"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingRetries(int)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:189,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withTimestampingRetryWait(int)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:199,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:209,1"
      Dst: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:277"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:280"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:220,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.PESigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProvider(java.lang.String)"
    - "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:232,1"
      Dst: "[java.security.Security].getProvider(java.lang.String)"
    - Src: "net.jsign.PESigner:232,1"
      Dst: "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:244,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:244,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureAlgorithm(java.lang.String,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].withSignatureProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.PESigner"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:255,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PESigner].sign(net.jsign.pe.PEFile)"
    functionSourceFile: "net.jsign.PESigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.pe.PEFile"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PESigner:265,1"
      Dst: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 352
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.appx.APPXFile].validate(java.security.cert.Certificate)"
    - "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - "[net.jsign.mscab.MSCabinetFile].getSignatures()"
    - "[net.jsign.script.JScript].getSignatures()"
    - "[net.jsign.script.PowerShellXMLScript].getSignatures()"
    - "[net.jsign.cat.CatalogFile].getSignatures()"
    - "[net.jsign.script.WindowsScript].getSignatures()"
    - "[net.jsign.msi.MSIFile].getSignatures()"
    - "[net.jsign.script.VBScript].getSignatures()"
    - "[net.jsign.appx.APPXFile].getSignatures()"
    - "[net.jsign.script.PowerShellScript].getSignatures()"
    - "[net.jsign.nuget.NugetFile].getSignatures()"
    - "[net.jsign.navx.NAVXFile].getSignatures()"
    - "[net.jsign.pe.PEFile].getSignatures()"
    - "[net.jsign.script.SignableScript].getSignatures()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.script.PowerShellScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.mscab.MSCabinetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.appx.APPXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.PowerShellXMLScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.JScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.cat.CatalogFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.VBScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.WindowsScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.navx.NAVXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.pe.PEFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.msi.MSIFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].save()"
    - "[net.jsign.script.VBScript].save()"
    - "[net.jsign.script.PowerShellXMLScript].save()"
    - "[net.jsign.appx.APPXFile].save()"
    - "[net.jsign.script.PowerShellScript].save()"
    - "[net.jsign.msi.MSIFile].save()"
    - "[net.jsign.script.SignableScript].save()"
    - "[net.jsign.script.WindowsScript].save()"
    - "[net.jsign.navx.NAVXFile].save()"
    - "[net.jsign.cat.CatalogFile].save()"
    - "[net.jsign.script.JScript].save()"
    - "[net.jsign.mscab.MSCabinetFile].save()"
    - "[net.jsign.pe.PEFile].save()"
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 1
    ICount: 28
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:357"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:364"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:372"
        BranchSideFuncs:
        - "getSignatures()"
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Branch String: "net.jsign.AuthenticodeSigner:366"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:353,1"
      Dst: "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:356,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.AuthenticodeSigner:357,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.AuthenticodeSigner:358,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:362,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:372,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:373,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].createThreadLocalMap(boolean)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "java.lang.ThreadLocal"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap$1].<init>(boolean)"
    - "[java.lang.ThreadLocal].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:56"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:67"
        BranchSideFuncs:
        - "<init>(boolean)"
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:57,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].<init>(boolean)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:67,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap$1].<init>(boolean)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap$1"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InheritableThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap$1:57,1"
      Dst: "[java.lang.InheritableThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].init()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    - "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:71,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:71,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "net.jsign.log4j.util.PropertiesUtil"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:158,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:75,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextMap].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].<init>(boolean)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].createThreadLocalMap(boolean)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:80,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextMap].createThreadLocalMap(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].put(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:85"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:87"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:89"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:88"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:88,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:89,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:89,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:90,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:91,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:91,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].putAll(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].size()"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:95"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:98"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:97"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:99"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:98"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:97"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:100"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:98,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:99,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:99,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:99,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:100,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:100,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:100,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:101,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:101,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:101,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:103,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:103,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].get(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:109"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:108,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:109,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].remove(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:115"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:120"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:114,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:116,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:117,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:118,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:118,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].removeAll(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:124"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:131"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:130"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:126"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:123,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:125,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:126,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:127,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:129,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:129,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].clear()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].remove()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:135,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].toMap()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].getCopy()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:140,1"
      Dst: "[net.jsign.log4j.spi.DefaultThreadContextMap].getCopy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].getCopy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:189"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:188,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:189,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:189,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].containsKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:146"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:146"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:145,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:146,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].forEach(net.jsign.log4j.util.BiConsumer)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.BiConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:152"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:154"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:155"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:151,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:155,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:155,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:155,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:155,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:159,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:160,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:160,1"
      Dst: "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.util.TriConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[net.jsign.log4j.util.TriConsumer].accept(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:167"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:170"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:170"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:177"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:166,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:170,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:170,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:170,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:174,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:175,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:175,1"
      Dst: "[net.jsign.log4j.util.TriConsumer].accept(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:183"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:182,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:183,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].getCopy()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:189"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:188,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:189,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:189,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:194,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].isEmpty()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:200"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:200"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:199,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:200,1"
      Dst: "[java.util.Map].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].size()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:206"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:205,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:206,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].toString()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].toString()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.Object].toString()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:212"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:210"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:211,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:212,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].hashCode()"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].hashCode()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Boolean].hashCode()"
    functionUses: 4
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:220"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:219,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:220,1"
      Dst: "[java.util.Map].hashCode()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:221,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:221,1"
      Dst: "[java.lang.Boolean].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.DefaultThreadContextMap"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.NoOpThreadContextMap].getImmutableMapOrNull()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:227"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:230"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:230"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:233"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:232"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:233"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:239"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:238"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:235"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:239"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:238"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.DefaultThreadContextMap:239"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.DefaultThreadContextMap:241"
        BranchSideFuncs:
        - "getImmutableMapOrNull()"
    Callsites:
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:243,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:244,1"
      Dst: "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - Src: "net.jsign.log4j.spi.DefaultThreadContextMap:245,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].<init>(java.security.PublicKey[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.PublicKey[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.security.PublicKey[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.security.PublicKey[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.security.PublicKey[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.security.PublicKey[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].<init>(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.KeyFactorySpi].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.KeyFactorySpi].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getPublicKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.CompositeSignaturesConstants$CompositeName].getId()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.CompositeSignaturesConstants$CompositeName].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.CompositeSignaturesConstants$CompositeName].getId()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.compositesignatures.CompositeSignaturesConstants$CompositeName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getFormat()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[java.util.List].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[java.util.List].get(int)"
    - "[java.security.Key].getEncoded()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    - "[java.util.List].equals(java.lang.Object)"
    functionUses: 5
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getAlgorithmIdentifier()"
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getAlgorithmIdentifier()"
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getAlgorithmIdentifier()"
    - Branch String: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "getAlgorithmIdentifier()"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.jcajce.CompositePublicKey:-1,1"
      Dst: "[java.util.List].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.CompositePublicKey].getAlgorithmIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.CompositePublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder,java.security.Signature,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder"
    - "java.security.Signature"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.io.OutputStreamFactory].createStream(java.security.Signature)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getAlgorithmIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.security.Signature].sign()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.security.Signature].sign()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaContentSignerBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.operator.RuntimeOperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.RuntimeOperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.RuntimeOperatorException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].initialiseDecodingTable()"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].initialiseDecodingTable()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].initialiseDecodingTable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].getEncodedLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].getMaxDecodedLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].encode(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "encode(byte[],int,int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].encode(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(byte[],int,int,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.bouncycastle.util.encoders.HexEncoder:net.jsign.commons.io.output.NullOutputStream].ignore(char)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 68
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs:
        - "write(byte[])"
        - "ignore(char)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decode(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].ignore(char)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.HexEncoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.encoders.HexEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.HexEncoder:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String,char)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.NullPointerException].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].hasMoreTokens()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].nextToken()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyDaemon].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.EntropyDaemon].run()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].isInterrupted()"
    - "[java.util.LinkedList].poll()"
    - "[java.lang.Runnable].run()"
    - "[java.lang.Thread].sleep(long)"
    - "[java.lang.Thread].interrupt()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    functionUses: 4
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    - Branch String: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    - Branch String: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].isInterrupted()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].poll()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].sleep(long)"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 1
    ICount: 13
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 1
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 10
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Integer:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Integer:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toString()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cmp.PKIFreeText:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIFreeText].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 1
    ICount: 13
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].<init>(net.jsign.bouncycastle.asn1.'cmp'.PKIStatusInfo,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].getStatus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].getTimeStampToken()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TimeStampResp:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile$1].<init>(net.jsign.msi.MSIFile,java.io.InputStream)"
    functionSourceFile: "net.jsign.msi.MSIFile$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.msi.MSIFile"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile$1:142,1"
      Dst: "[java.io.FilterInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile$1].close()"
    functionSourceFile: "net.jsign.msi.MSIFile$1"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getHInv()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.BigIntegers].modOddInverseVar(java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].modOddInverseVar(java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddInverseVar(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddInverseVar(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddInverseVar(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    functionUses: 5
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs:
        - "equals(net.jsign.bouncycastle.math.ec.ECPoint)"
        - "equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getN()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].importPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].bootstrap$()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.BiConsumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6:-1,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6].accept(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].lambda$close$0(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource$lambda_close_0__6:-1,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].lambda$close$0(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].lambda$close$0(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:174,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.nio.FileBackedDataSource].unmap(java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.poi.poifs.nio.FileBackedDataSource"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.CleanerUtil$lambda_newBufferCleaner_1__30].freeBuffer(java.nio.ByteBuffer)"
    - "[net.jsign.poi.poifs.nio.CleanerUtil].getCleaner()"
    - "[net.jsign.log4j.spi.AbstractLogger].atWarn()"
    - "[net.jsign.log4j.Logger].atWarn()"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].log(java.lang.String)"
    - "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    - "[net.jsign.log4j.internal.DefaultLogBuilder].withThrowable(java.lang.Throwable)"
    - "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - "[net.jsign.log4j.spi.AbstractLogger].atDebug()"
    - "[net.jsign.log4j.Logger].atDebug()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[net.jsign.poi.poifs.nio.CleanerUtil$BufferCleaner].freeBuffer(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 22
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:197"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.nio.FileBackedDataSource:201"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:208"
        BranchSideFuncs:
        - "withThrowable(java.lang.Throwable)"
        - "freeBuffer(java.nio.ByteBuffer)"
        - "atWarn()"
        - "getCleaner()"
      - BranchSide: "net.jsign.poi.poifs.nio.FileBackedDataSource:207"
        BranchSideFuncs:
        - "atDebug()"
        - "log(java.lang.String)"
    Callsites:
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:197,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:203,1"
      Dst: "[net.jsign.poi.poifs.nio.CleanerUtil].getCleaner()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:203,1"
      Dst: "[net.jsign.poi.poifs.nio.CleanerUtil$BufferCleaner].freeBuffer(java.nio.ByteBuffer)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.Logger].atWarn()"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.LogBuilder].withThrowable(java.lang.Throwable)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:205,1"
      Dst: "[net.jsign.log4j.LogBuilder].log(java.lang.String)"
    - Src: "net.jsign.poi.poifs.nio.FileBackedDataSource:208,1"
      Dst: "[net.jsign.log4j.Logger].atDebug()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.msi.MSIFile].isMSIFile(java.io.File)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].length()"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - "[java.io.DataInputStream].readLong()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:110"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:114"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:110,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.msi.MSIFile:113,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.msi.MSIFile:113,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.msi.MSIFile:114,1"
      Dst: "[java.io.DataInputStream].readLong()"
    - Src: "net.jsign.msi.MSIFile:115,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.msi.MSIFile:111,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.msi.MSIFile].<init>(java.io.File)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.msi.MSIFile:127,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    - Src: "net.jsign.msi.MSIFile:130,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.msi.MSIFile].<init>(java.nio.channels.SeekableByteChannel)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SeekableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - "[net.jsign.msi.MSIFile$1].<init>(net.jsign.msi.MSIFile,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:140,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.msi.MSIFile:142,1"
      Dst: "[java.nio.channels.Channels].newInputStream(java.nio.channels.ReadableByteChannel)"
    - Src: "net.jsign.msi.MSIFile:142,1"
      Dst: "[net.jsign.msi.MSIFile$1].<init>(net.jsign.msi.MSIFile,java.io.InputStream)"
    - Src: "net.jsign.msi.MSIFile:145,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].close()"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[java.nio.channels.Channel].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 3
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:157"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:154"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.msi.MSIFile:157"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:155"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:154"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.msi.MSIFile:155"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:155"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "net.jsign.msi.MSIFile:154"
        BranchSideFuncs:
        - "close()"
    - Branch String: "net.jsign.msi.MSIFile:157"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:158"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:155"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:155"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "net.jsign.msi.MSIFile:154"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "net.jsign.msi.MSIFile:157,1"
      Dst: "[java.nio.channels.Channel].close()"
    - Src: "net.jsign.msi.MSIFile:157,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - Src: "net.jsign.msi.MSIFile:155,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 15
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 808
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.DataSource].close()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:809,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].hasExtendedSignature()"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:168,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.msi.MSIFile:168,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:351"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:356"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:365"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:352,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:356,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.msi.MSIFile].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[java.security.MessageDigest].digest()"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 24
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:181"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:187"
        BranchSideFuncs:
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
        - "getEntry(java.lang.String)"
      - BranchSide: "net.jsign.msi.MSIFile:186"
        BranchSideFuncs:
        - "getPropertyTable()"
        - "getRoot()"
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    Callsites:
    - Src: "net.jsign.msi.MSIFile:177,1"
      Dst: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - Src: "net.jsign.msi.MSIFile:181,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.msi.MSIFile:181,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:182,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - Src: "net.jsign.msi.MSIFile:184,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.msi.MSIFile:189,1"
      Dst: "[java.security.MessageDigest].digest()"
    - Src: "net.jsign.msi.MSIFile:191,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 13
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:109,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "net.jsign.DigestAlgorithm:111,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:321,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:351"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:356"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:365"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:352,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:356,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:54,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:53,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.MessageDigest"
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].position()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 22
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:223"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:229"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.msi.MSIFile:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:222,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.msi.MSIFile:224,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.msi.MSIFile:226,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:184,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:173,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.RootProperty"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:147,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.MessageDigest"
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].isDirectory()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.msi.MSIStreamName].decode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    - "[net.jsign.poi.hpsf.ClassID].write(byte[],int)"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.security.MessageDigest].update(byte[])"
    functionUses: 2
    ICount: 46
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:197"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:200"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.msi.MSIFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:216"
        BranchSideFuncs:
        - "isDirectory()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.msi.MSIFile:215"
        BranchSideFuncs:
        - "write(byte[],int)"
        - "getStorageClsid()"
    - Branch String: "net.jsign.msi.MSIFile:202"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:211"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
        - "decode()"
      - BranchSide: "net.jsign.msi.MSIFile:210"
        BranchSideFuncs:
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Branch String: "net.jsign.msi.MSIFile:204"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:200"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.msi.MSIFile:204"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:208"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:207"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    Callsites:
    - Src: "net.jsign.msi.MSIFile:196,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:201,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.msi.MSIFile:201,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.msi.MSIFile:202,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.msi.MSIFile:203,1"
      Dst: "[net.jsign.msi.MSIStreamName].decode()"
    - Src: "net.jsign.msi.MSIFile:204,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:208,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.msi.MSIFile:209,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.msi.MSIFile:211,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.msi.MSIFile:217,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    - Src: "net.jsign.msi.MSIFile:217,1"
      Dst: "[net.jsign.poi.hpsf.ClassID].write(byte[],int)"
    - Src: "net.jsign.msi.MSIFile:218,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty:245,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].getChildren()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.msi.MSIStreamName:51,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIStreamName].decode()"
    functionSourceFile: "net.jsign.msi.MSIStreamName"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.lang.String].toCharArray()"
    - "[java.io.ByteArrayOutputStream].write(int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 2
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIStreamName:60"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:77"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIStreamName:76"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:61"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIStreamName:62"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIStreamName:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIStreamName:58,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.msi.MSIStreamName:60,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.msi.MSIStreamName:65,1"
      Dst: "[java.io.ByteArrayOutputStream].write(int)"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.msi.MSIStreamName:77,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSDocument"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.DocumentProperty"
    - "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSDocument:64"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:68"
        BranchSideFuncs:
        - "getMiniStore()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSDocument:67"
        BranchSideFuncs:
        - "getStartBlock()"
        - "getBlockStoreBlockSize()"
        - "<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:64,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getMiniStore()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStartBlock()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:65,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSStream].<init>(net.jsign.poi.poifs.filesystem.BlockStore,int)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:66,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSMiniStore].getBlockStoreBlockSize()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSDocument:69,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBlockStoreBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.hpsf.ClassID].write(byte[],int)"
    functionSourceFile: "net.jsign.poi.hpsf.ClassID"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ArrayStoreException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.hpsf.ClassID:172"
      Branch Sides:
      - BranchSide: "net.jsign.poi.hpsf.ClassID:179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.hpsf.ClassID:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.hpsf.ClassID:173,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.hpsf.ClassID:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.hpsf.ClassID:173,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.hpsf.ClassID:173,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.hpsf.ClassID:173,1"
      Dst: "[java.lang.ArrayStoreException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.hpsf.ClassID:193,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.MessageDigest"
    - "net.jsign.poi.poifs.property.DirectoryProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.property.RootProperty].getName()"
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.poi.poifs.property.DirectoryProperty].isDirectory()"
    - "[net.jsign.poi.poifs.property.DocumentProperty].isDirectory()"
    - "[net.jsign.msi.MSIStreamName].decode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    - "[net.jsign.poi.hpsf.ClassID].write(byte[],int)"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.security.MessageDigest].update(byte[])"
    functionUses: 2
    ICount: 46
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:197"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:200"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.msi.MSIFile:201"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:216"
        BranchSideFuncs:
        - "isDirectory()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.msi.MSIFile:215"
        BranchSideFuncs:
        - "write(byte[],int)"
        - "getStorageClsid()"
    - Branch String: "net.jsign.msi.MSIFile:202"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:211"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
        - "decode()"
      - BranchSide: "net.jsign.msi.MSIFile:210"
        BranchSideFuncs:
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Branch String: "net.jsign.msi.MSIFile:204"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:200"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "net.jsign.msi.MSIFile:204"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:208"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:207"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    Callsites:
    - Src: "net.jsign.msi.MSIFile:196,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].iterator()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.msi.MSIFile:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[net.jsign.msi.MSIStreamName].<init>(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:198,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:201,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.msi.MSIFile:201,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.msi.MSIFile:202,1"
      Dst: "[net.jsign.poi.poifs.property.Property].isDirectory()"
    - Src: "net.jsign.msi.MSIFile:203,1"
      Dst: "[net.jsign.msi.MSIStreamName].decode()"
    - Src: "net.jsign.msi.MSIFile:204,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:208,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.msi.MSIFile:209,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.msi.MSIFile:211,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.msi.MSIFile:217,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getStorageClsid()"
    - Src: "net.jsign.msi.MSIFile:217,1"
      Dst: "[net.jsign.poi.hpsf.ClassID].write(byte[],int)"
    - Src: "net.jsign.msi.MSIFile:218,1"
      Dst: "[java.security.MessageDigest].update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.MessageDigest"
    - "net.jsign.poi.poifs.filesystem.POIFSDocument"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].position()"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 22
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:223"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:229"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "net.jsign.msi.MSIFile:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:222,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getSize()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].iterator()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.msi.MSIFile:223,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.msi.MSIFile:224,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.msi.MSIFile:225,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.msi.MSIFile:226,1"
      Dst: "[java.security.MessageDigest].update(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.msi.MSIFile].createIndirectData(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.msi.MSIFile].computeDigest(net.jsign.DigestAlgorithm)"
    - "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    - "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    functionUses: 1
    ICount: 19
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:233,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.msi.MSIFile:234,1"
      Dst: "[net.jsign.msi.MSIFile].computeDigest(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.msi.MSIFile:234,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.msi.MSIFile:236,1"
      Dst: "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:237,1"
      Dst: "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    - Src: "net.jsign.msi.MSIFile:237,1"
      Dst: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    - Src: "net.jsign.msi.MSIFile:239,1"
      Dst: "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 33
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - "[java.security.MessageDigest].digest()"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 24
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:181"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:187"
        BranchSideFuncs:
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
        - "getEntry(java.lang.String)"
      - BranchSide: "net.jsign.msi.MSIFile:186"
        BranchSideFuncs:
        - "getPropertyTable()"
        - "getRoot()"
        - "updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    Callsites:
    - Src: "net.jsign.msi.MSIFile:177,1"
      Dst: "[net.jsign.DigestAlgorithm].getMessageDigest()"
    - Src: "net.jsign.msi.MSIFile:181,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.msi.MSIFile:181,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:182,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - Src: "net.jsign.msi.MSIFile:184,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.filesystem.POIFSDocument)"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.msi.MSIFile:187,1"
      Dst: "[net.jsign.msi.MSIFile].updateDigest(java.security.MessageDigest,net.jsign.poi.poifs.property.DirectoryProperty)"
    - Src: "net.jsign.msi.MSIFile:189,1"
      Dst: "[java.security.MessageDigest].digest()"
    - Src: "net.jsign.msi.MSIFile:191,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.DigestInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.DigestInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcUuid"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcUuid:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:39,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcSipInfo"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.asn1.authenticode.SpcUuid"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcSipInfo:57,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:41,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcIndirectDataContent"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    - "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcIndirectDataContent:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].getSignatures()"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].iterator()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].iterator()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].hasNext()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].hasNext()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 2
    ICount: 47
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:248"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:272"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
        - "getUnsignedAttributes()"
        - "readObject()"
        - "getSigners()"
        - "getSignerInfos()"
        - "<init>(byte[])"
        - "toByteArray(java.io.InputStream)"
      - BranchSide: "net.jsign.msi.MSIFile:271"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:257"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:269"
        BranchSideFuncs:
        - "get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
      - BranchSide: "net.jsign.msi.MSIFile:268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:259"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:269"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "getAttrValues()"
      - BranchSide: "net.jsign.msi.MSIFile:268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:260"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:269"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "next()"
        - "iterator()"
        - "getInstance(java.lang.Object)"
        - "getAttrValues()"
      - BranchSide: "net.jsign.msi.MSIFile:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:244,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.msi.MSIFile:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.msi.MSIFile:247,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:249,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    - Src: "net.jsign.msi.MSIFile:249,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream)"
    - Src: "net.jsign.msi.MSIFile:251,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.msi.MSIFile:251,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.msi.MSIFile:251,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:251,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.msi.MSIFile:252,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.msi.MSIFile:255,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    - Src: "net.jsign.msi.MSIFile:255,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    - Src: "net.jsign.msi.MSIFile:255,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.msi.MSIFile:255,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.msi.MSIFile:256,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    - Src: "net.jsign.msi.MSIFile:258,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.msi.MSIFile:260,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    - Src: "net.jsign.msi.MSIFile:260,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].iterator()"
    - Src: "net.jsign.msi.MSIFile:260,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.msi.MSIFile:268,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:351"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:356"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:365"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:352,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:356,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.poi.poifs.filesystem.DocumentInputStream].<init>(net.jsign.poi.poifs.filesystem.DocumentEntry)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DocumentInputStream"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.poi.poifs.filesystem.DocumentEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DocumentNode].getSize()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    - "[java.io.InputStream].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DocumentEntry].getSize()"
    functionUses: 1
    ICount: 34
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DocumentInputStream:73"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentInputStream:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DocumentInputStream:75"
        BranchSideFuncs:
        - "getProperty()"
        - "<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
        - "getFileSystem()"
        - "getParent()"
        - "getSize()"
        - "getBlockIterator()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:72,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:74,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:80,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DocumentEntry].getSize()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:87,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getProperty()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.EntryNode].getParent()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getFileSystem()"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:90,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.property.DocumentProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem)"
    - Src: "net.jsign.poi.poifs.filesystem.DocumentInputStream:92,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].getBlockIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:175,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:189,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 4
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int,boolean,boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:208"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:207"
        BranchSideFuncs:
        - "toByteArray(java.io.InputStream,int,int,boolean,boolean)"
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:208,1"
      Dst: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IOUtils].toByteArray(java.io.InputStream,int,int,boolean,boolean)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 3
    returnType: "byte[]"
    argCount: 5
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    - "[net.jsign.poi.util.IOUtils].calculateByteArrayInitLength(boolean,int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream].read()"
    - "[net.jsign.poi.util.IOUtils].throwRecordTruncationException(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 85
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:230"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:231"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.util.IOUtils:230"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.poi.util.IOUtils:230"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:233"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.poi.util.IOUtils:232"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:234"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:235"
        BranchSideFuncs:
        - "checkLength(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:234"
        BranchSideFuncs:
        - "checkLength(long,int)"
    - Branch String: "net.jsign.poi.util.IOUtils:234"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:238"
        BranchSideFuncs:
        - "checkLength(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:237"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:238"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:238"
        BranchSideFuncs:
        - "calculateByteArrayInitLength(boolean,int,int)"
        - "get()"
        - "builder()"
        - "setBufferSize(int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:237"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:247"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:250"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:249"
        BranchSideFuncs:
        - "checkByteSizeLimit(int)"
    - Branch String: "net.jsign.poi.util.IOUtils:251"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:253"
        BranchSideFuncs:
        - "calculateByteArrayInitLength(boolean,int,int)"
        - "write(byte[],int,int)"
        - "throwRecordTruncationException(int)"
        - "toByteArray()"
        - "checkLength(long,int)"
        - "get()"
        - "read()"
        - "read(byte[],int,int)"
        - "<init>(java.lang.String)"
        - "builder()"
        - "checkByteSizeLimit(int)"
        - "setBufferSize(int)"
        - "close()"
      - BranchSide: "net.jsign.poi.util.IOUtils:252"
        BranchSideFuncs:
        - "read()"
    - Branch String: "net.jsign.poi.util.IOUtils:251"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:245"
        BranchSideFuncs:
        - "calculateByteArrayInitLength(boolean,int,int)"
        - "write(byte[],int,int)"
        - "throwRecordTruncationException(int)"
        - "toByteArray()"
        - "checkLength(long,int)"
        - "get()"
        - "read()"
        - "read(byte[],int,int)"
        - "<init>(java.lang.String)"
        - "builder()"
        - "checkByteSizeLimit(int)"
        - "setBufferSize(int)"
        - "close()"
      - BranchSide: "net.jsign.poi.util.IOUtils:244"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.poi.util.IOUtils:253"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:257"
        BranchSideFuncs:
        - "throwRecordTruncationException(int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:253"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:257"
        BranchSideFuncs:
        - "throwRecordTruncationException(int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:253"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:257"
        BranchSideFuncs:
        - "throwRecordTruncationException(int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:253"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:257"
        BranchSideFuncs:
        - "throwRecordTruncationException(int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:257"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:261"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    - Branch String: "net.jsign.poi.util.IOUtils:257"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:261"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    - Branch String: "net.jsign.poi.util.IOUtils:257"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:261"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    - Branch String: "net.jsign.poi.util.IOUtils:262"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    - Branch String: "net.jsign.poi.util.IOUtils:262"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    - Branch String: "net.jsign.poi.util.IOUtils:262"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:230"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "net.jsign.poi.util.IOUtils:262"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:260"
        BranchSideFuncs:
        - "toByteArray()"
        - "close()"
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:231,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:233,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.poi.util.IOUtils:235,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    - Src: "net.jsign.poi.util.IOUtils:238,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.poi.util.IOUtils:239,1"
      Dst: "[net.jsign.poi.util.IOUtils].calculateByteArrayInitLength(boolean,int,int)"
    - Src: "net.jsign.poi.util.IOUtils:241,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.poi.util.IOUtils:241,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].setBufferSize(int)"
    - Src: "net.jsign.poi.util.IOUtils:241,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.poi.util.IOUtils:245,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.poi.util.IOUtils:248,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - Src: "net.jsign.poi.util.IOUtils:250,1"
      Dst: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    - Src: "net.jsign.poi.util.IOUtils:253,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.poi.util.IOUtils:254,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRecordTruncationException(int)"
    - Src: "net.jsign.poi.util.IOUtils:258,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.util.IOUtils:258,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:258,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.poi.util.IOUtils:258,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.util.IOUtils:258,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.util.IOUtils:261,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.poi.util.IOUtils:262,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.poi.util.IOUtils:241,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 16
    BBCount: 36
  - functionName: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.poi.util.RecordFormatException"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.RecordFormatException:32,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.IOUtils].checkLength(long,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:276"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:280"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:279"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:277"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:280"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:283"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:278,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.poi.util.IOUtils].calculateByteArrayInitLength(boolean,int,int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 266
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:268"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:267"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:266"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:269"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:272"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:271"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:269"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:272"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.IOUtils:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:267,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 23
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:203"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:204"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:207"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:206"
        BranchSideFuncs:
        - "writeImpl(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:202,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:207,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.poi.util.IOUtils].checkByteSizeLimit(int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.IOUtils:122"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:125"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.IOUtils:122"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.IOUtils:125"
        BranchSideFuncs:
        - "throwRFE(long,int)"
      - BranchSide: "net.jsign.poi.util.IOUtils:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:123,1"
      Dst: "[net.jsign.poi.util.IOUtils].throwRFE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.poi.util.IOUtils].throwRecordTruncationException(int)"
    functionSourceFile: "net.jsign.poi.util.IOUtils"
    linkageType: null
    functionLinenumber: 603
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.IOUtils:608,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.IOUtils:604,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.poi.util.IOUtils:604,1"
      Dst: "[net.jsign.poi.util.RecordFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:184,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformationStore].getSigners()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformationStore"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformationStore:-1,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getUnsignedAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 13
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    - Branch String: "net.jsign.bouncycastle.cms.SignerInformation:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.SignerInformation:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.AttributeTable].get(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.AttributeTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 12
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.AttributeTable:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getAttrValues()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.msi.MSIFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.EntryNode].delete()"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.poi.poifs.filesystem.Entry].delete()"
    functionUses: 1
    ICount: 33
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:279"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:288"
        BranchSideFuncs:
        - "toASN1Structure()"
        - "getEncoded(java.lang.String)"
        - "createOrUpdateDocument(java.lang.String,java.io.InputStream)"
      - BranchSide: "net.jsign.msi.MSIFile:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:288"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:291"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:290"
        BranchSideFuncs:
        - "hasEntry(java.lang.String)"
    - Branch String: "net.jsign.msi.MSIFile:291"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:295"
        BranchSideFuncs:
        - "getRoot()"
        - "delete()"
        - "getEntry(java.lang.String)"
      - BranchSide: "net.jsign.msi.MSIFile:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:280,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.msi.MSIFile:280,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:282,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    - Src: "net.jsign.msi.MSIFile:282,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.msi.MSIFile:282,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    - Src: "net.jsign.msi.MSIFile:284,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.msi.MSIFile:288,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:289,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:289,1"
      Dst: "[net.jsign.poi.poifs.filesystem.Entry].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getRoot()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 839
    functionDepth: 4
    returnType: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    - "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    functionUses: 8
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:840"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:843"
        BranchSideFuncs:
        - "<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
        - "getRoot()"
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:842"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].getRoot()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:841,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].<init>(net.jsign.poi.poifs.property.DirectoryProperty,net.jsign.poi.poifs.filesystem.POIFSFileSystem,net.jsign.poi.poifs.filesystem.DirectoryNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createOrUpdateDocument(java.lang.String,java.io.InputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 487
    functionDepth: 8
    returnType: "net.jsign.poi.poifs.filesystem.DocumentEntry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:488"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:491"
        BranchSideFuncs:
        - "createDocument(java.lang.String,java.io.InputStream)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:490"
        BranchSideFuncs:
        - "getEntryCaseInsensitive(java.lang.String)"
        - "<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
        - "replaceContents(java.io.InputStream)"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:488,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:489,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].createDocument(java.lang.String,java.io.InputStream)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:491,1"
      Dst: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:492,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].<init>(net.jsign.poi.poifs.filesystem.DocumentNode)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:493,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSDocument].replaceContents(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].hasEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:321"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:321,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.DirectoryNode].getEntry(java.lang.String)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.DirectoryNode"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.filesystem.Entry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map].keySet()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 39
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:351"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:353"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:354"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:367"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:356"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:357"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:358"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:359"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.filesystem.DirectoryNode:360"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:365"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.DirectoryNode:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:352,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:356,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:365,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.poi.poifs.filesystem.DirectoryNode:366,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.msi.MSIFile].save()"
    functionSourceFile: "net.jsign.msi.MSIFile"
    linkageType: null
    functionLinenumber: 299
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.PropertyTable].countBlocks()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    - "[java.io.RandomAccessFile].seek(long)"
    - "[java.nio.ByteBuffer].array()"
    - "[java.io.RandomAccessFile].write(byte[])"
    - "[java.io.RandomAccessFile].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.Channels].newOutputStream(java.nio.channels.WritableByteChannel)"
    - "[java.nio.channels.SeekableByteChannel].position()"
    - "[java.nio.channels.SeekableByteChannel].truncate(long)"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 74
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.msi.MSIFile:302"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.msi.MSIFile:304"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:328"
        BranchSideFuncs:
        - "writeFilesystem()"
      - BranchSide: "net.jsign.msi.MSIFile:327"
        BranchSideFuncs:
        - "writeFilesystem(java.io.OutputStream)"
    - Branch String: "net.jsign.msi.MSIFile:308"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:321"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:320"
        BranchSideFuncs:
        - "<init>(java.io.File,boolean)"
        - "close()"
    - Branch String: "net.jsign.msi.MSIFile:333"
      Branch Sides:
      - BranchSide: "net.jsign.msi.MSIFile:338"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.msi.MSIFile:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.msi.MSIFile:300,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.msi.MSIFile:300,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.msi.MSIFile:301,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    - Src: "net.jsign.msi.MSIFile:301,1"
      Dst: "[net.jsign.poi.poifs.property.PropertyTable].countBlocks()"
    - Src: "net.jsign.msi.MSIFile:301,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.msi.MSIFile:301,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.msi.MSIFile:302,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    - Src: "net.jsign.msi.MSIFile:305,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem()"
    - Src: "net.jsign.msi.MSIFile:309,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - Src: "net.jsign.msi.MSIFile:310,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.msi.MSIFile:311,1"
      Dst: "[java.io.RandomAccessFile].seek(long)"
    - Src: "net.jsign.msi.MSIFile:312,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "net.jsign.msi.MSIFile:312,1"
      Dst: "[java.io.RandomAccessFile].write(byte[])"
    - Src: "net.jsign.msi.MSIFile:313,1"
      Dst: "[java.io.RandomAccessFile].close()"
    - Src: "net.jsign.msi.MSIFile:317,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.msi.MSIFile:315,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    - Src: "net.jsign.msi.MSIFile:317,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.msi.MSIFile:328,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.msi.MSIFile:329,1"
      Dst: "[java.nio.channels.Channels].newOutputStream(java.nio.channels.WritableByteChannel)"
    - Src: "net.jsign.msi.MSIFile:329,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    - Src: "net.jsign.msi.MSIFile:330,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position()"
    - Src: "net.jsign.msi.MSIFile:330,1"
      Dst: "[java.nio.channels.SeekableByteChannel].truncate(long)"
    - Src: "net.jsign.msi.MSIFile:335,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getPropertyTable()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 0
    returnType: "net.jsign.poi.poifs.property.PropertyTable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.PropertyTable].countBlocks()"
    functionSourceFile: "net.jsign.poi.poifs.property.PropertyTable"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.PropertyTable:182"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:185"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.PropertyTable:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.PropertyTable:179,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.poi.poifs.property.PropertyTable:180,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.common.POIFSBigBlockSize"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].getBigBlockSize()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 939
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:940,1"
      Dst: "[net.jsign.poi.poifs.common.POIFSBigBlockSize].getBigBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 736
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:737"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:742"
        BranchSideFuncs:
        - "isWriteable()"
    - Branch String: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:749"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:748"
        BranchSideFuncs:
        - "syncWithDataSource()"
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:738,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:743,1"
      Dst: "[net.jsign.poi.poifs.nio.FileBackedDataSource].isWriteable()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:749,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 808
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].close()"
    - "[net.jsign.poi.poifs.nio.DataSource].close()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:809,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.File,boolean)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:183,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].<init>(java.nio.channels.FileChannel,java.io.File,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].writeFilesystem(java.io.OutputStream)"
    functionSourceFile: "net.jsign.poi.poifs.filesystem.POIFSFileSystem"
    linkageType: null
    functionLinenumber: 760
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - "[net.jsign.poi.poifs.nio.ByteArrayBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].copyTo(java.io.OutputStream)"
    - "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:761,1"
      Dst: "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].syncWithDataSource()"
    - Src: "net.jsign.poi.poifs.filesystem.POIFSFileSystem:764,1"
      Dst: "[net.jsign.poi.poifs.nio.DataSource].copyTo(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils$1].<init>()"
    functionSourceFile: "net.jsign.PrivateKeyUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils$1:92,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    functionSourceFile: "net.jsign.PrivateKeyUtils$1"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils$1].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    functionSourceFile: "net.jsign.PrivateKeyUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.function.Function"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.PrivateKeyUtils$1$lambda_computeIfAbsent_0__58].bootstrap$()"
    - "[java.util.HashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.PrivateKeyUtils$1:101,1"
      Dst: "[net.jsign.PrivateKeyUtils$1$lambda_computeIfAbsent_0__58].bootstrap$()"
    - Src: "net.jsign.PrivateKeyUtils$1:101,1"
      Dst: "[java.util.HashMap].computeIfAbsent(java.lang.Object,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.PrivateKeyUtils$1].lambda$computeIfAbsent$0(java.lang.Object)"
    functionSourceFile: "net.jsign.PrivateKeyUtils$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(int,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].asUnsignedByteArray(java.math.BigInteger,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.math.BigInteger"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandomInRange(java.math.BigInteger,java.math.BigInteger,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.BigIntegers].createRandomInRange(java.math.BigInteger,java.math.BigInteger,java.security.SecureRandom)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.BigIntegers].createRandomBigInteger(int,java.security.SecureRandom)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].subtract(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].createRandomInRange(java.math.BigInteger,java.math.BigInteger,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].createRandomBigInteger(int,java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandomBigInteger(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].fromUnsignedByteArray(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].fromUnsignedByteArray(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].byteValueExact(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.lang.Number].byteValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.Number].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].shortValueExact(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.lang.Number].shortValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.Number].shortValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].intValueExact(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].intValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].longValueExact(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].longValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddInverse(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddInverse(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    functionUses: 1
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs:
        - "modOddInverse(int[],int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
        - "create(int)"
        - "toBigInteger(int,int[])"
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs:
        - "modOddInverse(int[],int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
        - "create(int)"
        - "toBigInteger(int,int[])"
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs:
        - "modOddInverse(int[],int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
        - "create(int)"
        - "toBigInteger(int,int[])"
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs:
        - "modOddInverse(int[],int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
        - "create(int)"
        - "toBigInteger(int,int[])"
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs:
        - "modOddInverse(int[],int[],int[])"
        - "fromBigInteger(int,java.math.BigInteger)"
        - "create(int)"
        - "toBigInteger(int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddInverse(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddInverseVar(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddInverseVar(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddInverseVar(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddIsCoprime(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprime(int[],int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprime(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].modOddIsCoprimeVar(java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].testBit(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.math.BigInteger].mod(java.math.BigInteger)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprimeVar(int[],int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].testBit(int)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.ArithmeticException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].mod(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].fromBigInteger(int,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].modOddIsCoprimeVar(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].getUnsignedByteLength(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandomBigInteger(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandomPrime(int,int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Random].nextInt()"
    - "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].gcd(java.math.BigInteger)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.math.BigInteger].add(java.math.BigInteger)"
    - "[java.math.BigInteger].isProbablePrime(int)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].gcd(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.math.BigInteger].isProbablePrime(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.BigIntegers].createRandom(int,java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.util.BigIntegers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.BigIntegers:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.BigIntegers:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.BigIntegers:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].copy(int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - "[java.util.Vector].<init>()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processNonce(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 135
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processNonce(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 28
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processNonce(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].numberOfTrailingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].lastElement()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].lastElement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processNonce(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getMac()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getUpdateOutputSize(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processByte(byte,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].lastElement()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].lastElement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_extend(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    functionUses: 0
    ICount: 113
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_extend(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_extend(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].lastElement()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - "[java.util.Vector].addElement(java.lang.Object)"
    - "[java.util.Vector].elementAt(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].size()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].lastElement()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.util.Vector].elementAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processHashBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processMainBlock(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].getLSub(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].reset(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].clear(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].processAADBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].updateHASH(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_double(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_extend(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].OCB_ntz(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].shiftLeft(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.OCBBlockCipher].xor(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.OCBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag].create(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Tag"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag].getTagClass()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag].getTagNumber()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - "[net.jsign.log4j.spi.StandardLevel].getStandardLevel(int)"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 8
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:139"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:141"
        BranchSideFuncs:
        - "getStandardLevel(int)"
        - "toRootUpperCase(java.lang.String)"
    - Branch String: "net.jsign.log4j.Level:145"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:148"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:135,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.Level:136,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.Level:137,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.Level:144,1"
      Dst: "[net.jsign.log4j.spi.StandardLevel].getStandardLevel(int)"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.Level].intLevel()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].getStandardLevel()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.spi.StandardLevel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].isInRange(net.jsign.log4j.Level,net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.Level"
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:178"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:178"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:177"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.Level].isLessSpecificThan(net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:196"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:195"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.Level].isMoreSpecificThan(net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 211
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:212"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:211"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.Level].clone()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 0
    returnType: "net.jsign.log4j.Level"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CloneNotSupportedException].<init>()"
    functionUses: 13
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:219,1"
      Dst: "[java.lang.CloneNotSupportedException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].compareTo(net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:225"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:224"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:225"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.Level].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:230"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:229"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:230"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:229"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.Level].getDeclaringClass()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].hashCode()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 238
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:239,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].name()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].toString()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 252
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].forName(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.log4j.Level"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.log4j.Level].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:265"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:268"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:267"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:270"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:275"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:265,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.Level:266,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.Level:268,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:268,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:269,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.Level:275,1"
      Dst: "[net.jsign.log4j.Level].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:304,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].<init>(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - "[net.jsign.log4j.spi.StandardLevel].getStandardLevel(int)"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 8
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:136"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:139"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:141"
        BranchSideFuncs:
        - "getStandardLevel(int)"
        - "toRootUpperCase(java.lang.String)"
    - Branch String: "net.jsign.log4j.Level:145"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:148"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:135,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.Level:136,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.Level:137,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.Level:144,1"
      Dst: "[net.jsign.log4j.spi.StandardLevel].getStandardLevel(int)"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:145,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.Level:146,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.StandardLevel].getStandardLevel(int)"
    functionSourceFile: "net.jsign.log4j.spi.StandardLevel"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 1
    returnType: "net.jsign.log4j.spi.StandardLevel"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.log4j.spi.StandardLevel].intLevel()"
    - "[java.util.AbstractCollection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.StandardLevel:91"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.StandardLevel:97"
        BranchSideFuncs:
        - "hasNext()"
        - "intLevel()"
        - "next()"
      - BranchSide: "net.jsign.log4j.spi.StandardLevel:96"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.StandardLevel:92"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.StandardLevel:95"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.StandardLevel:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.StandardLevel:91,1"
      Dst: "[java.util.AbstractCollection].iterator()"
    - Src: "net.jsign.log4j.spi.StandardLevel:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.StandardLevel:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.StandardLevel:92,1"
      Dst: "[net.jsign.log4j.spi.StandardLevel].intLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.StandardLevel].intLevel()"
    functionSourceFile: "net.jsign.log4j.spi.StandardLevel"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].getLevel(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:290"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:292"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:290,1"
      Dst: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    - Src: "net.jsign.log4j.Level:291,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.Level:293,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:293,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:293,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.Strings].isEmpty(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    - Branch String: "net.jsign.log4j.util.Strings:106"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.Strings:105"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:106,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:304,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].toLevel(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:304,1"
      Dst: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 315
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:319"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    - Branch String: "net.jsign.log4j.Level:320"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.Level].toLevel(java.lang.String,net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: 315
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:316"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:319"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    - Branch String: "net.jsign.log4j.Level:320"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:318"
        BranchSideFuncs:
        - "toRootUpperCase(java.lang.String)"
    Callsites:
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:319,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.Level].values()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.Level[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:329,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.log4j.Level:329,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:344"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:341,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.Level:342,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:342,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:343,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.Strings"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.Strings:304,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].valueOf(java.lang.Class,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Enum"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:364,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].readResolve()"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.Level].valueOf(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:369,1"
      Dst: "[net.jsign.log4j.Level].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:344"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.Level:346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.Level:341,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.Level:342,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.Level:342,1"
      Dst: "[net.jsign.log4j.util.Strings].toRootUpperCase(java.lang.String)"
    - Src: "net.jsign.log4j.Level:343,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.Level:347,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.Level].compareTo(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.Level].compareTo(net.jsign.log4j.Level)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.Level:78,1"
      Dst: "[net.jsign.log4j.Level].compareTo(net.jsign.log4j.Level)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.Level].compareTo(net.jsign.log4j.Level)"
    functionSourceFile: "net.jsign.log4j.Level"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.Level"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.Level:225"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:224"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.Level:225"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.Level:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.json-io.util.io.Writers$CalendarWriter].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$CalendarWriter"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Writers$CalendarWriter:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$CalendarWriter].write(java.lang.Object,boolean,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$CalendarWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Calendar].getTimeZone()"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Calendar].getTime()"
    - "[java.text.DateFormat].format(java.util.Date)"
    - "[java.util.TimeZone].getID()"
    - "[java.io.Writer].write(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:64,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:64,1"
      Dst: "[java.util.Calendar].getTimeZone()"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:64,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:65,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:66,1"
      Dst: "[java.util.Calendar].getTime()"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:66,1"
      Dst: "[java.text.DateFormat].format(java.util.Date)"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:68,1"
      Dst: "[java.util.TimeZone].getID()"
    - Src: "net.jsign.json-io.util.io.Writers$CalendarWriter:69,1"
      Dst: "[java.io.Writer].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$CalendarWriter].hasPrimitiveForm()"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$CalendarWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Writers$CalendarWriter].writePrimitiveForm(java.lang.Object,java.io.Writer)"
    functionSourceFile: "net.jsign.json-io.util.io.Writers$CalendarWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointTemp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x9.X962NamedCurves$3:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage].getFormattedMessage()"
    functionSourceFile: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage].getFormat()"
    functionSourceFile: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage].getParameters()"
    functionSourceFile: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage].getThrowable()"
    functionSourceFile: "net.jsign.log4j.message.ParameterizedNoReferenceMessageFactory$StatusMessage"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].<init>()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:42,1"
      Dst: "[net.jsign.script.SignableScript].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].<init>(java.io.File)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].<init>(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:53,1"
      Dst: "[net.jsign.script.SignableScript].<init>(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].<init>(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:64,1"
      Dst: "[net.jsign.script.SignableScript].<init>(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].isByteOrderMarkSigned()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getSignatureStart()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getSignatureEnd()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getLineCommentStart()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getLineCommentEnd()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getSpcSipInfo()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    - "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:94,1"
      Dst: "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    - Src: "net.jsign.script.PowerShellScript:94,1"
      Dst: "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcUuid].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcUuid"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[java.math.BigInteger].toByteArray()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcUuid:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:38,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.asn1.authenticode.SpcUuid:39,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcSipInfo].<init>(int,net.jsign.asn1.authenticode.SpcUuid)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcSipInfo"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.asn1.authenticode.SpcUuid"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcSipInfo:57,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].close()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].close()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].save(java.io.File)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].save(java.io.File)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].save(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].save()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].save()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].createIndirectData(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Object"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].createIndirectData(net.jsign.DigestAlgorithm)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].createIndirectData(net.jsign.DigestAlgorithm)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].computeDigest(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].computeDigest(net.jsign.DigestAlgorithm)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].computeDigest(net.jsign.DigestAlgorithm)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSSignedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getSignatures()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].getSignatures()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].getSignatures()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].setContent(java.lang.String)"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].setContent(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].setContent(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.script.PowerShellScript].getContent()"
    functionSourceFile: "net.jsign.script.PowerShellScript"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.SignableScript].getContent()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.script.PowerShellScript:35,1"
      Dst: "[net.jsign.script.SignableScript].getContent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.djb.Curve25519:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.gm.GMNamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV:net.jsign.bouncycastle.crypto.params.ParametersWithRandom:net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    functionUses: 20
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 22
    ICount: 46
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithRandom].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithSBox].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithSBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    functionUses: 49
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].processBytes(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].calculateByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].calculateByte(byte)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getCurrentIV()"
    - "[net.jsign.bouncycastle.crypto.StreamBlockCipher].getUnderlyingCipher()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 118
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getUnderlyingCipher()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "getCurrentIV()"
        - "<init>(byte[])"
        - "calculateByte(byte)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getUnderlyingCipher()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
        - "processBlock(byte[],int,byte[],int)"
        - "getCurrentIV()"
        - "<init>(byte[])"
        - "calculateByte(byte)"
        - "<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.StreamBlockCipher].getUnderlyingCipher()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getCurrentIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].calculateByte(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].getCurrentIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ParametersWithIV:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].<init>(net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 22
    ICount: 46
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].calculateByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-2"
        BranchSideFuncs:
        - "encryptByte(byte)"
        - "decryptByte(byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].encryptByte(byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].decryptByte(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 15
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].<init>(int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    functionUses: 12
    ICount: 14
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "encodeConstructed()"
        - "toASN1Primitive()"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 28
    ICount: 22
    EdgeCount: 204
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "getLengthOfDL(int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "getLengthOfIdentifier(int)"
        - "isExplicit()"
        - "getLengthOfDL(int)"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfIdentifier(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodeConstructed()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].getDERSubStream()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Time].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.DERSet].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].toDERObject()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString:META-INF.versions.9.org.bouncycastle.asn1.DERExternal:META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime:META-INF.versions.9.org.bouncycastle.asn1.DEROctetString:META-INF.versions.9.org.bouncycastle.asn1.DERSequence:META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.DERBitString:net.jsign.bouncycastle.asn1.DERExternal:net.jsign.bouncycastle.asn1.DERGeneralizedTime:net.jsign.bouncycastle.asn1.DEROctetString:net.jsign.bouncycastle.asn1.DERSequence:net.jsign.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 33
    ICount: 25
    EdgeCount: 288
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "getDERSubStream()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "getDERSubStream()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "getDERSubStream()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-2"
        BranchSideFuncs:
        - "isExplicit()"
        - "getDERSubStream()"
        - "encodeConstructed()"
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
        - "writeIdentifier(boolean,int,int)"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
        - "writeDL(int)"
        - "toDERObject()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].toDERObject()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].isExplicit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodeConstructed()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 6
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    functionUses: 27
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "write(byte[],int,int)"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getDERSubStream()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.DEROutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].rebuildConstructed(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Sequence"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Primitive"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].replaceTag(int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(int,int,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].toDERObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].toDLObject()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DirectoryStreamFilter].<init>(net.jsign.commons.io.file.PathFilter)"
    functionSourceFile: "net.jsign.commons.io.file.DirectoryStreamFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.PathFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:46,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DirectoryStreamFilter].accept(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.DirectoryStreamFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].readBasicFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DirectoryStreamFilter:51"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DirectoryStreamFilter:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:51,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readBasicFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:51,1"
      Dst: "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].readBasicFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.attribute.BasicFileAttributes"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1366,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.BasicFileAttributes"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.Class"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1338"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1338"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1337"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1338,1"
      Dst: "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.file.DirectoryStreamFilter].getPathFilter()"
    functionSourceFile: "net.jsign.commons.io.file.DirectoryStreamFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.PathFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DirectoryStreamFilter].accept(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.DirectoryStreamFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DirectoryStreamFilter].accept(java.nio.file.Path)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:35,1"
      Dst: "[net.jsign.commons.io.file.DirectoryStreamFilter].accept(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DirectoryStreamFilter].accept(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.DirectoryStreamFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].readBasicFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DirectoryStreamFilter:51"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DirectoryStreamFilter:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:51,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readBasicFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DirectoryStreamFilter:51,1"
      Dst: "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.TBCPadding].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.TBCPadding"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.paddings.TBCPadding:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.TBCPadding].init(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.TBCPadding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.TBCPadding].getPaddingName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.TBCPadding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.TBCPadding].addPadding(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.TBCPadding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.TBCPadding].padCount(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.TBCPadding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.TBCPadding:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT163K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$18:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$14:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].bitLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].testBitZero()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].toBigInteger()"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].toBigInteger()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 2
    ICount: 58
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionUses: 40
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionUses: 40
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionUses: 53
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 98
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipVector(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedDown(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionUses: 1
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipWord(long[],int,int,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBit(long[],int,int,int,int[])"
        - "testBit(long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBit(long[],int,int,int,int[])"
        - "testBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiplyMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].invert()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].invert()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].invert()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    functionUses: 40
    ICount: 6
    EdgeCount: 49
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].invert()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionUses: 55
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 98
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceResult(long[],int,int,int,int[])"
        - "addShiftedUp(long[],int,long[],int,int,int)"
        - "multiplyWord(long,long[],int,long[],int)"
        - "shiftUp(long[],int,long[],int,int,int)"
        - "degree()"
        - "add(long[],int,long[],int,long[],int,int)"
        - "addBoth(long[],int,long[],int,long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].modSquare(int,int[])"
    functionUses: 5
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modSquare(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modSquare(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionUses: 2
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "interleave2_32to64(int)"
        - "getUsedLength()"
        - "reduceInPlace(long[],int,int,int,int[])"
        - "<init>(long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "interleave2_32to64(int)"
        - "getUsedLength()"
        - "reduceInPlace(long[],int,int,int,int[])"
        - "<init>(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].squareMinusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].square(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "getUsedLength()"
        - "resizedInts(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].squarePow(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].modInverse(int,int[])"
    functionUses: 22
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modInverse(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modInverse(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 78
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "reduceBit(long[],int,int,int,int[])"
        - "clone()"
        - "addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
        - "degree()"
        - "degreeFrom(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 2
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 2
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePow(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePow(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].squarePow(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getRepresentation()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    functionUses: 9
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "areEqual(int[],int[])"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(int[],int[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionUses: 7
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionUses: 8
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionUses: 6
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedSubjectPublicKeyInfo(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 2
    ICount: 9
    EdgeCount: 107
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable,net.jsign.bouncycastle.asn1.ASN1Set,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].setProvider(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].setProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].<init>(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].build(char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.operator.InputDecryptorProvider"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder,char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder].access$000(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$16:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1UTCTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1UTCTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UTCTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 118
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[java.util.Enumeration].hasMoreElements()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].intValueExact()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    functionUses: 110
    ICount: 46
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "getModulus()"
        - "getPublicExponent()"
        - "getExponent2()"
        - "getPrime2()"
        - "getExponent1()"
        - "getPrime1()"
        - "getCoefficient()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(java.math.BigInteger)"
        - "getPrivateExponent()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPublicExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrime2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent1()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getExponent2()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getCoefficient()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].add(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].addExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].addOne(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].subFrom(int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].half(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].inv(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].mulAddTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].negate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    functionUses: 1
    ICount: 47
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].square(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].squareN(int[],int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 56
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].sub(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].twice(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].addPInvTo(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field].subPInvFrom(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 119
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 122
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 1
    ICount: 81
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 84
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 1
    ICount: 81
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getPolicyQualifierId()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].getQualifier()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 7
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoException].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoException:-1,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1].precompute(net.jsign.bouncycastle.math.ec.PreCompInfo)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.PreCompInfo"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.PreCompInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasFailed()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasCurveEquationPassed()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].satisfiesCurveEquation()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportFailed()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportCurveEquationPassed()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasOrderPassed()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].satisfiesOrder()"
    - "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportOrderPassed()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasFailed()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasCurveEquationPassed()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].satisfiesCurveEquation()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportFailed()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportCurveEquationPassed()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasOrderPassed()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].satisfiesOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECPoint$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportOrderPassed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.ValidityPrecompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasFailed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasCurveEquationPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportFailed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportCurveEquationPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].hasOrderPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ValidityPrecompInfo].reportOrderPassed()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ValidityPrecompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(java.lang.String,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].<init>(java.math.BigInteger[],java.math.BigInteger[],java.math.BigInteger,java.math.BigInteger,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.math.BigInteger[]"
    - "java.math.BigInteger[]"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters].checkVector(java.math.BigInteger[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurveGLV(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.endo.GLVTypeBParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$8:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getInputStream()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[])"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[])"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(byte[])"
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 7
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContentType()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1].get(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.operator.DigestCalculator"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream)"
    - "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].<init>(java.security.MessageDigest)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    - "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 20
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].<init>(java.security.MessageDigest)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder].access$000(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper].createDigest(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.MessageDigest"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.util.ProviderJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.DefaultJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.util.NamedJcaJceHelper].createMessageDigest(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 51
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
        - "createMessageDigest(java.lang.String)"
        - "getValue()"
        - "getInstance(java.lang.Object)"
        - "getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createMessageDigest(java.lang.String)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.MessageDigestUtils].getDigestName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].<init>(java.security.MessageDigest)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.MessageDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:-1,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorCreationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorCreationException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorCreationException:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[java.math.BigInteger].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].<init>(net.jsign.commons.io.function.IOBaseStream)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOBaseStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].close()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:46,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].isParallel()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].isParallel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:51,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].isParallel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].iterator()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].iterator()"
    - "[net.jsign.commons.io.function.IOIterator].asIterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:56,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].iterator()"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:56,1"
      Dst: "[net.jsign.commons.io.function.IOIterator].asIterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].onClose(java.lang.Runnable)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.stream.BaseStream"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOBaseStream$onClose__59].bootstrap$(net.jsign.commons.io.function.IOBaseStream)"
    - "[net.jsign.commons.io.function.UncheckedIOBaseStream$lambda_onClose_0__60].bootstrap$(java.lang.Runnable)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOBaseStream$onClose__59].bootstrap$(net.jsign.commons.io.function.IOBaseStream)"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOBaseStream$lambda_onClose_0__60].bootstrap$(java.lang.Runnable)"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOFunction"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:117,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:119,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "java.io.UncheckedIOException"
    argCount: 1
    argTypes:
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:339,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].parallel()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.BaseStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].parallel()"
    - "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:68,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].parallel()"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:68,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].sequential()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.BaseStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].sequential()"
    - "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:74,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].sequential()"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:74,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].spliterator()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Spliterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].spliterator()"
    - "[net.jsign.commons.io.function.IOSpliterator].unwrap()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:79,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].spliterator()"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:79,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].unordered()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.BaseStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOBaseStream].unordered()"
    - "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:85,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].unordered()"
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:85,1"
      Dst: "[net.jsign.commons.io.function.IOBaseStream].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOBaseStream].lambda$onClose$0(java.lang.Runnable)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOBaseStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Runnable].run()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOBaseStream:62,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat512].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].mul31BothAdd(int,int,int[],int,int[],int[],int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat512].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].mul31BothAdd(int,int,int[],int,int[],int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "sub(int,int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].squareN(int[],int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].squareN(int[],int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat512].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].mulWordAddTo(int,int,int[],int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "addTo(int,int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
        - "shiftDownBits(int,int[],int,int,int,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBits(int,int[],int,int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.MultiBlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESEngine:-2"
        BranchSideFuncs:
        - "hasEnabledService(java.lang.String)"
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESEngine:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 55
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getBlockSize()"
        - "processBytes(long,byte[],int,int,byte[],int)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getMultiBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getMultiBlockSize(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getMultiBlockSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlocks(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].skip(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].skip(long,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].skip(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].skip(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].seekTo(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].seekTo(long,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].seekTo(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].seekTo(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getPosition()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getPosition(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getPosition(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getPosition(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(long,byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].makeCTRInstance()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 61
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeCTRInstance()"
        - "getIV()"
        - "reset()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeCTRInstance()"
        - "getIV()"
        - "reset()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeCTRInstance()"
        - "getIV()"
        - "reset()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeCTRInstance()"
        - "getIV()"
        - "reset()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "init(long,byte[],byte[])"
        - "makeCTRInstance()"
        - "getIV()"
        - "reset()"
        - "<init>(long)"
        - "getBlockSize()"
        - "clone(byte[])"
        - "getReference()"
        - "getKey()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].makeCTRInstance()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper].<init>(long)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(long,byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].makeCTRInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR$CTRRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    functionUses: 13
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].makeCTRInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].returnByte(byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].returnByte(long,byte)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].returnByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].returnByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    functionUses: 13
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs:
        - "reset(long)"
        - "getReference()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getPosition(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].getMultiBlockSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].skip(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].seekTo(long,long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(long,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].returnByte(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBytes(long,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].dispose(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 11
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeCTR:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreType].values()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:484,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].hasCertificate()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.KeyStore"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].name()"
    - "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.Provider].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:513"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:513"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:514"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:517"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:520"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:520"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:519"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:523"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:529"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:530"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:533"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:531"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - Src: "net.jsign.KeyStoreType:517,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:524,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:528,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "net.jsign.KeyStoreType:530,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:532,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 7
    BBCount: 30
  - functionName: "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.security.KeyStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].aliases()"
    - "[java.util.Collections].list(java.util.Enumeration)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.security.KeyStore].aliases()"
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.util.Collections].list(java.util.Enumeration)"
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].of(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.FileInputStream].read(byte[])"
    - "[java.nio.ByteBuffer].wrap(byte[])"
    - "[java.nio.ByteBuffer].get(int)"
    - "[java.io.FileInputStream].close()"
    - "[java.nio.ByteBuffer].getInt(int)"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.File].getName()"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].endsWith(java.lang.String)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:559"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:577"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:576"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:564"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:566"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:568"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:567"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:568"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:571"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:570"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:578"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:579"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:578"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:578"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:580"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:579"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:580"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:582"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:581"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:582"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:585"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:584"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:559,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:560,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:562,1"
      Dst: "[java.io.FileInputStream].read(byte[])"
    - Src: "net.jsign.KeyStoreType:563,1"
      Dst: "[java.nio.ByteBuffer].wrap(byte[])"
    - Src: "net.jsign.KeyStoreType:564,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    - Src: "net.jsign.KeyStoreType:571,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:566,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:572,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:577,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.KeyStoreType:577,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.KeyStoreType:578,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 21
  - functionName: "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType$lambda_getCertificateStore_0__61].bootstrap$(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:590,1"
      Dst: "[net.jsign.KeyStoreType$lambda_getCertificateStore_0__61].bootstrap$(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].lambda$getCertificateStore$0(net.jsign.KeyStoreBuilder,java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.cert.Certificate[]"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    - "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:591"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:592"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:591"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:591"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:596"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:595"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:591,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.KeyStoreType:596,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    - Src: "net.jsign.KeyStoreType:596,1"
      Dst: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - Src: "net.jsign.KeyStoreType:598,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:598,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:598,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.KeyStoreType:598,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:598,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.CertificateUtils].getChainComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:44,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.CertificateUtils:45,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.CertificateUtils:46,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - Src: "net.jsign.CertificateUtils:47,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[net.jsign.CertificateUtils].getChainComparator()"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.CertificateUtils:50,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreType].$values()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "net.jsign.KeyStoreType$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].access$100(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Function"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:55,1"
      Dst: "[net.jsign.KeyStoreType].getCertificateStore(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:54,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:82,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:83,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:85,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:104"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:106"
        BranchSideFuncs:
        - "needNewBuffer(int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:103,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:108,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:154,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream$init__62].bootstrap$()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:132,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream$init__62].bootstrap$()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:132,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:82,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:83,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:85,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:104"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:106"
        BranchSideFuncs:
        - "needNewBuffer(int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:103,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:108,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].reset()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].resetImpl()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:117,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].resetImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].size()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:127,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream$init__62].bootstrap$()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:132,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream$init__62].bootstrap$()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:132,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toInputStream(net.jsign.commons.io.output.AbstractByteArrayOutputStream$InputStreamConstructor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 21
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:141"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:144"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:146"
        BranchSideFuncs:
        - "writeImpl(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:142,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:148,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:154,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(int)"
    functionUses: 18
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:159,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeImpl(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].writeTo(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeToImpl(java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:164,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].writeToImpl(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve$F2m,int,int,long[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    - "int"
    - "int"
    - "long[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.ECCurve$F2m$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].access$100(net.jsign.bouncycastle.math.ec.ECCurve$F2m)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].<init>(int,int[],net.jsign.bouncycastle.math.ec.LongArray)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "net.jsign.bouncycastle.math.ec.LongArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 10
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECFieldElement$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithAESCBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithAESCBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithAESCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithAESCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithAESCBC:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].bootstrap$(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17:-1,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].<init>(net.jsign.commons.io.input.CharSequenceInputStream$Builder)"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17].get()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].lambda$get$0()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder$lambda_get_0__17:-1,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].lambda$get$0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].lambda$get$0()"
    functionSourceFile: "net.jsign.commons.io.input.CharSequenceInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.input.CharSequenceInputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharSequence()"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder,net.jsign.commons.io.input.CharSequenceInputStream$1)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getCharSequence()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.input.CharSequenceInputStream$Builder:107,1"
      Dst: "[net.jsign.commons.io.input.CharSequenceInputStream].<init>(java.lang.CharSequence,int,java.nio.charset.CharsetEncoder,net.jsign.commons.io.input.CharSequenceInputStream$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve,int,long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1].createPoint(long[],long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERVideotexString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERVideotexString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERVideotexString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERVideotexString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERVideotexString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERVideotexString].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERVideotexString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].<init>(byte[],boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERVideotexString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1VideotexString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.ThreadLocal].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].setParameter(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.SecurityManager].checkPermission(java.security.Permission)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.lang.ThreadLocal].remove()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.SecurityManager].checkPermission(java.security.Permission)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 23
    BBCount: 47
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getEcImplicitlyCa()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getDHDefaultParameters(int)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "javax.crypto.spec.DHParameterSpec"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[javax.crypto.spec.DHParameterSpec].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[javax.crypto.spec.DHParameterSpec].getP()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(net.jsign.bouncycastle.crypto.params.DHParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.DHParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getQ()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getJ()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getM()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getL()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,int,int)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.DHDomainParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getValidationParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getDSADefaultParameters(int)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.spec.DSAParameterSpec"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - "[java.security.spec.DSAParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.security.spec.DSAParameterSpec].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSizedProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].lookupProperty(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DHParameters].getP()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getP()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getAcceptableNamedCurves()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration].getAdditionalECParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProviderConfiguration:-1,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].<init>()"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.commons.cli.Options].<init>()"
    - "[net.jsign.commons.cli.Option].builder(java.lang.String)"
    - "[net.jsign.commons.cli.Option$Builder].hasArg()"
    - "[net.jsign.commons.cli.Option$Builder].longOpt(java.lang.String)"
    - "[net.jsign.commons.cli.Option$Builder].argName(java.lang.String)"
    - "[net.jsign.commons.cli.Option$Builder].desc(java.lang.String)"
    - "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    - "[net.jsign.commons.cli.Option$Builder].build()"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.Option].builder()"
    functionUses: 0
    ICount: 179
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.JsignCLI:54,1"
      Dst: "[net.jsign.commons.cli.Options].<init>()"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option].builder(java.lang.String)"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].hasArg()"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].longOpt(java.lang.String)"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].argName(java.lang.String)"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].desc(java.lang.String)"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].type(java.lang.Class)"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Option$Builder].build()"
    - Src: "net.jsign.JsignCLI:55,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.JsignCLI:56,1"
      Dst: "[net.jsign.commons.cli.Option].builder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].execute(java.lang.String[])"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].<init>()"
    - "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[])"
    - "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    - "[net.jsign.JsignCLI].printHelp()"
    - "[net.jsign.StdOutConsole].<init>(int)"
    - "[net.jsign.SignerHelper].<init>(net.jsign.Console,java.lang.String)"
    - "[net.jsign.JsignCLI].setOption(java.lang.String,net.jsign.SignerHelper,net.jsign.commons.cli.CommandLine)"
    - "[net.jsign.SignerHelper].replace(boolean)"
    - "[net.jsign.SignerHelper].detached(boolean)"
    - "[net.jsign.commons.cli.CommandLine].getArgList()"
    - "[java.util.List].isEmpty()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[net.jsign.SignerHelper].sign(java.io.File)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.JsignCLI:102"
      Branch Sides:
      - BranchSide: "net.jsign.JsignCLI:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.JsignCLI:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.JsignCLI:102"
      Branch Sides:
      - BranchSide: "net.jsign.JsignCLI:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.JsignCLI:106"
        BranchSideFuncs: []
    - Branch String: "net.jsign.JsignCLI:130"
      Branch Sides:
      - BranchSide: "net.jsign.JsignCLI:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.JsignCLI:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.JsignCLI:134"
      Branch Sides:
      - BranchSide: "net.jsign.JsignCLI:137"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.JsignCLI:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.JsignCLI:98,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].<init>()"
    - Src: "net.jsign.JsignCLI:100,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[])"
    - Src: "net.jsign.JsignCLI:102,1"
      Dst: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    - Src: "net.jsign.JsignCLI:103,1"
      Dst: "[net.jsign.JsignCLI].printHelp()"
    - Src: "net.jsign.JsignCLI:107,1"
      Dst: "[net.jsign.StdOutConsole].<init>(int)"
    - Src: "net.jsign.JsignCLI:107,1"
      Dst: "[net.jsign.SignerHelper].<init>(net.jsign.Console,java.lang.String)"
    - Src: "net.jsign.JsignCLI:109,1"
      Dst: "[net.jsign.JsignCLI].setOption(java.lang.String,net.jsign.SignerHelper,net.jsign.commons.cli.CommandLine)"
    - Src: "net.jsign.JsignCLI:126,1"
      Dst: "[net.jsign.SignerHelper].replace(boolean)"
    - Src: "net.jsign.JsignCLI:128,1"
      Dst: "[net.jsign.SignerHelper].detached(boolean)"
    - Src: "net.jsign.JsignCLI:130,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getArgList()"
    - Src: "net.jsign.JsignCLI:130,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.JsignCLI:131,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.JsignCLI:134,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.JsignCLI:134,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.JsignCLI:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.JsignCLI:135,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.JsignCLI:135,1"
      Dst: "[net.jsign.SignerHelper].sign(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.commons.cli.DefaultParser].<init>()"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -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.jsign.commons.cli.DefaultParser:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.commons.cli.CommandLine"
    argCount: 2
    argTypes:
    - "net.jsign.commons.cli.Options"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:60,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.commons.cli.CommandLine"
    argCount: 3
    argTypes:
    - "net.jsign.commons.cli.Options"
    - "java.lang.String[]"
    - "java.util.Properties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:76,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].parse(net.jsign.commons.cli.Options,java.lang.String[],java.util.Properties,boolean)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.commons.cli.CommandLine"
    argCount: 4
    argTypes:
    - "net.jsign.commons.cli.Options"
    - "java.lang.String[]"
    - "java.util.Properties"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].getRequiredOptions()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.commons.cli.Options].getOptionGroups()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.OptionGroup].setSelected(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.CommandLine].<init>()"
    - "[net.jsign.commons.cli.DefaultParser].handleToken(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].checkRequiredArgs()"
    - "[net.jsign.commons.cli.DefaultParser].handleProperties(java.util.Properties)"
    - "[net.jsign.commons.cli.DefaultParser].checkRequiredOptions()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:109"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:114"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:113"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:116"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:118"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:106,1"
      Dst: "[net.jsign.commons.cli.Options].getRequiredOptions()"
    - Src: "net.jsign.commons.cli.DefaultParser:106,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.cli.DefaultParser:109,1"
      Dst: "[net.jsign.commons.cli.Options].getOptionGroups()"
    - Src: "net.jsign.commons.cli.DefaultParser:109,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.cli.DefaultParser:109,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.DefaultParser:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.DefaultParser:111,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].setSelected(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:114,1"
      Dst: "[net.jsign.commons.cli.CommandLine].<init>()"
    - Src: "net.jsign.commons.cli.DefaultParser:120,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleToken(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:125,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].checkRequiredArgs()"
    - Src: "net.jsign.commons.cli.DefaultParser:128,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleProperties(java.util.Properties)"
    - Src: "net.jsign.commons.cli.DefaultParser:130,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].checkRequiredOptions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Options].getRequiredOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:242,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getOptionGroups()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:96,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.commons.cli.Options:96,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionGroup].setSelected(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.AlreadySelectedException].<init>(net.jsign.commons.cli.OptionGroup,net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionGroup:88"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionGroup:97"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionGroup:98"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionGroup:99"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionGroup:98"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionGroup:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionGroup:98,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.OptionGroup:98,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.OptionGroup:104,1"
      Dst: "[net.jsign.commons.cli.AlreadySelectedException].<init>(net.jsign.commons.cli.OptionGroup,net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Option].getKey()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:179"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].<init>(net.jsign.commons.cli.OptionGroup,net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.cli.OptionGroup"
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:61,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionGroup].getSelected()"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.AlreadySelectedException:47,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.ParseException:40,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].<init>()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:46,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleToken(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].acceptsArg()"
    - "[net.jsign.commons.cli.DefaultParser].isArgument(java.lang.String)"
    - "[net.jsign.commons.cli.Util].stripLeadingAndTrailingQuotes(java.lang.String)"
    - "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleLongOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleShortAndLongOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:225"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:229"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:232"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:237"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:240"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:241"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:246"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:241"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:246"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:250"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:253"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:250"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:227,1"
      Dst: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:229,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.DefaultParser:233,1"
      Dst: "[net.jsign.commons.cli.Option].acceptsArg()"
    - Src: "net.jsign.commons.cli.DefaultParser:233,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isArgument(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:235,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:235,1"
      Dst: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:237,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:239,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleLongOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:243,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleShortAndLongOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:247,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:341,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].acceptsArg()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].hasArg()"
    - "[net.jsign.commons.cli.Option].hasArgs()"
    - "[net.jsign.commons.cli.Option].hasOptionalArg()"
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:730"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:729"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:730"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:729"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:730"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:730"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:729"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:730"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:730,1"
      Dst: "[net.jsign.commons.cli.Option].hasArg()"
    - Src: "net.jsign.commons.cli.Option:730,1"
      Dst: "[net.jsign.commons.cli.Option].hasArgs()"
    - Src: "net.jsign.commons.cli.Option:730,1"
      Dst: "[net.jsign.commons.cli.Option].hasOptionalArg()"
    - Src: "net.jsign.commons.cli.Option:730,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Option].hasArg()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:290"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:289"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:290"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:289"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.Option].hasArgs()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 370
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:371"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:370"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:371"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:370"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.Option].hasOptionalArg()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].isArgument(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].isOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].isNegativeNumber(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:263"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:262"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:263"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:263,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:263,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isNegativeNumber(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.DefaultParser].isOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].isLongOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].isShortOption(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:291"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:291"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:291,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isLongOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:291,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isShortOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.DefaultParser].isLongOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.DefaultParser].getLongPrefix(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:325"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:326"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:325"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:331"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:333"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:337"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:338"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:343"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:338"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:325,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:325,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:330,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:331,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:333,1"
      Dst: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:333,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.DefaultParser:338,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].getLongPrefix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:281"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:286"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Options:293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:288"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:276,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.Options:281,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.commons.cli.Options:281,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:283,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.Options:288,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:290,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Util:37"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:40"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Util:41"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:44"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Util:45"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Util:41,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.Util:43,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.Util:43,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.DefaultParser].getLongPrefix(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Options].hasLongOption(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:585"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:594"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:588"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:581,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:585,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:587,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:588,1"
      Dst: "[net.jsign.commons.cli.Options].hasLongOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.Options].hasLongOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:319,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:321,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].isShortOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].valueOf(char)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:302"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:302"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:307"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:309"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:308"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:307"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:310"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:314"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:315"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:314"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:315"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:302,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:302,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:308,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:309,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:309,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:310,1"
      Dst: "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:315,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:315,1"
      Dst: "[java.lang.String].valueOf(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:333,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:335,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].isNegativeNumber(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].parseDouble(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:275,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.Util].stripLeadingAndTrailingQuotes(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].indexOf(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Util:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Util:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Util:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:69"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Util:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Util:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Util:64,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.Util:65,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.Util:65,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.Util:65,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.Util:65,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[net.jsign.commons.cli.Option].processValue(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:442"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:445"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:444,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option:446,1"
      Dst: "[net.jsign.commons.cli.Option].processValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.Option].processValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].hasValueSeparator()"
    - "[net.jsign.commons.cli.Option].getValueSeparator()"
    - "[java.lang.String].indexOf(int)"
    - "[java.util.List].size()"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Option].add(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:463"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:491"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:472"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:491"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:475"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:480"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:463,1"
      Dst: "[net.jsign.commons.cli.Option].hasValueSeparator()"
    - Src: "net.jsign.commons.cli.Option:466,1"
      Dst: "[net.jsign.commons.cli.Option].getValueSeparator()"
    - Src: "net.jsign.commons.cli.Option:469,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.Option:475,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.Option:481,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.Option:481,1"
      Dst: "[net.jsign.commons.cli.Option].add(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option:484,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Option].hasValueSeparator()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:413"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:412"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].getValueSeparator()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].add(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].acceptsArg()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:506"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:511"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:506,1"
      Dst: "[net.jsign.commons.cli.Option].acceptsArg()"
    - Src: "net.jsign.commons.cli.Option:508,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option:512,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleLongOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithoutEqual(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithEqual(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:382"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:382,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:384,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithoutEqual(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:388,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithEqual(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithoutEqual(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - "[java.util.List].size()"
    - "[net.jsign.commons.cli.AmbiguousOptionException].<init>(java.lang.String,java.util.Collection)"
    - "[java.util.List].get(int)"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:405"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:409"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:404,1"
      Dst: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:405,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.DefaultParser:407,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:409,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.DefaultParser:411,1"
      Dst: "[net.jsign.commons.cli.AmbiguousOptionException].<init>(java.lang.String,java.util.Collection)"
    - Src: "net.jsign.commons.cli.DefaultParser:415,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:415,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:415,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    - "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:362"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:362"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:362"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:364"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:367"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:358,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:358,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:360,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.DefaultParser:360,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:360,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.DefaultParser:360,1"
      Dst: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:363,1"
      Dst: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.UnrecognizedOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.UnrecognizedOptionException:57,1"
      Dst: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.UnrecognizedOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.UnrecognizedOptionException:44,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AmbiguousOptionException].<init>(java.lang.String,java.util.Collection)"
    functionSourceFile: "net.jsign.commons.cli.AmbiguousOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.AmbiguousOptionException].createMessage(java.lang.String,java.util.Collection)"
    - "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:47,1"
      Dst: "[net.jsign.commons.cli.AmbiguousOptionException].createMessage(java.lang.String,java.util.Collection)"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:47,1"
      Dst: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AmbiguousOptionException].createMessage(java.lang.String,java.util.Collection)"
    functionSourceFile: "net.jsign.commons.cli.AmbiguousOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.AmbiguousOptionException:74"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.AmbiguousOptionException:83"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.AmbiguousOptionException:79"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.AmbiguousOptionException:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:69,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.AmbiguousOptionException:86,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:259"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:257,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:259,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:261,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.DefaultParser].checkRequiredArgs()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[net.jsign.commons.cli.DefaultParser].updateRequiredOptions(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.Option].hasArg()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:620"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:625"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:612,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].checkRequiredArgs()"
    - Src: "net.jsign.commons.cli.DefaultParser:614,1"
      Dst: "[net.jsign.commons.cli.Option].clone()"
    - Src: "net.jsign.commons.cli.DefaultParser:616,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].updateRequiredOptions(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:618,1"
      Dst: "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:620,1"
      Dst: "[net.jsign.commons.cli.Option].hasArg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.DefaultParser].checkRequiredArgs()"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].requiresArg()"
    - "[net.jsign.commons.cli.MissingArgumentException].<init>(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:209"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:212"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:209"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:209,1"
      Dst: "[net.jsign.commons.cli.Option].requiresArg()"
    - Src: "net.jsign.commons.cli.DefaultParser:211,1"
      Dst: "[net.jsign.commons.cli.MissingArgumentException].<init>(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].requiresArg()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.Option].acceptsArg()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:741"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:744"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Option:745"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:748"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:747,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.Option:749,1"
      Dst: "[net.jsign.commons.cli.Option].acceptsArg()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.MissingArgumentException].<init>(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.MissingArgumentException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.MissingArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingArgumentException:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.MissingArgumentException:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.MissingArgumentException:56,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.MissingArgumentException:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.MissingArgumentException:56,1"
      Dst: "[net.jsign.commons.cli.MissingArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingArgumentException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.MissingArgumentException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingArgumentException:44,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].clone()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 684
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:685,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.cli.Option:686,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.cli.Option:691,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.Option:691,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.Option:691,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.commons.cli.Option:691,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.Option:691,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.DefaultParser].updateRequiredOptions(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.util.List].remove(java.lang.Object)"
    - "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - "[net.jsign.commons.cli.OptionGroup].setSelected(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:637"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:642"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:643"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:647"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:651"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:637,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.DefaultParser:639,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.DefaultParser:639,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    - Src: "net.jsign.commons.cli.DefaultParser:643,1"
      Dst: "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:647,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - Src: "net.jsign.commons.cli.DefaultParser:652,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].setSelected(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Option].isRequired()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.OptionGroup"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:346,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:346,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionGroup].isRequired()"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:351,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithEqual(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - "[java.util.List].size()"
    - "[net.jsign.commons.cli.AmbiguousOptionException].<init>(java.lang.String,java.util.Collection)"
    - "[java.util.List].get(int)"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.Option].acceptsArg()"
    - "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:438"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:441"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:442"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:450"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:431,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:433,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:435,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:437,1"
      Dst: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:438,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.DefaultParser:440,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:442,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.DefaultParser:444,1"
      Dst: "[net.jsign.commons.cli.AmbiguousOptionException].<init>(java.lang.String,java.util.Collection)"
    - Src: "net.jsign.commons.cli.DefaultParser:448,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:448,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:450,1"
      Dst: "[net.jsign.commons.cli.Option].acceptsArg()"
    - Src: "net.jsign.commons.cli.DefaultParser:452,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:453,1"
      Dst: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleShortAndLongOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithoutEqual(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].getLongPrefix(java.lang.String)"
    - "[net.jsign.commons.cli.Option].acceptsArg()"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].isJavaProperty(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.DefaultParser].handleConcatenatedOptions(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithEqual(java.lang.String)"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:488"
      Branch Sides: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:491"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:496"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:500"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:539"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:503"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:506"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:507"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:514"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:517"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:522"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:517"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:522"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:523"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:543"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:557"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:547"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:554"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:547"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:554"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:484,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:486,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:488,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:491,1"
      Dst: "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:493,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:493,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:497,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:507,1"
      Dst: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:507,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.DefaultParser:510,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithoutEqual(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:515,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].getLongPrefix(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:517,1"
      Dst: "[net.jsign.commons.cli.Option].acceptsArg()"
    - Src: "net.jsign.commons.cli.DefaultParser:520,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:520,1"
      Dst: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:523,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].isJavaProperty(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:526,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:533,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleConcatenatedOptions(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:569,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleLongOptionWithEqual(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 26
  - functionName: "[net.jsign.commons.cli.DefaultParser].isJavaProperty(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getArgs()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:606"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:606"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:602"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:606"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:603,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.DefaultParser:604,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:606,1"
      Dst: "[net.jsign.commons.cli.Option].getArgs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.Option].getArgs()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleConcatenatedOptions(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.Options].hasOption(java.lang.String)"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:685"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:705"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:689"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:693"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:684"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:693"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:684"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:702"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:702"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:701"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:702"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:702"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:701"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:685,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.DefaultParser:687,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:687,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.DefaultParser:689,1"
      Dst: "[net.jsign.commons.cli.Options].hasOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:691,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:691,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:696,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.commons.cli.DefaultParser:696,1"
      Dst: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:702,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleUnknownToken(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.cli.Options].hasOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:305,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:307,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.DefaultParser].handleProperties(java.util.Properties)"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Properties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Properties].propertyNames()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    - "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[net.jsign.commons.cli.Option].hasArg()"
    - "[net.jsign.commons.cli.Option].getValues()"
    - "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:142"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:147"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:152"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:159"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:159"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:161"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:183"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:161"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:183"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:166"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:172"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:168"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:169"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:168"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:173"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:181"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:181"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.DefaultParser:180"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.DefaultParser:175"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:147,1"
      Dst: "[java.util.Properties].propertyNames()"
    - Src: "net.jsign.commons.cli.DefaultParser:147,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.commons.cli.DefaultParser:149,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.commons.cli.DefaultParser:149,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.cli.DefaultParser:151,1"
      Dst: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:154,1"
      Dst: "[net.jsign.commons.cli.UnrecognizedOptionException].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:158,1"
      Dst: "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.DefaultParser:159,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - Src: "net.jsign.commons.cli.DefaultParser:161,1"
      Dst: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:164,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:166,1"
      Dst: "[net.jsign.commons.cli.Option].hasArg()"
    - Src: "net.jsign.commons.cli.DefaultParser:168,1"
      Dst: "[net.jsign.commons.cli.Option].getValues()"
    - Src: "net.jsign.commons.cli.DefaultParser:170,1"
      Dst: "[net.jsign.commons.cli.Option].addValueForProcessing(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:173,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.commons.cli.DefaultParser:181,1"
      Dst: "[net.jsign.commons.cli.DefaultParser].handleOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 23
  - functionName: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:192"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:205"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:204"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:194"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:199"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:191,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:199,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Option].getOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].getLongOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].getValues()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].hasNoValues()"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:570"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:570,1"
      Dst: "[net.jsign.commons.cli.Option].hasNoValues()"
    - Src: "net.jsign.commons.cli.Option:570,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.Option:570,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].hasNoValues()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:629,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.DefaultParser].checkRequiredOptions()"
    functionSourceFile: "net.jsign.commons.cli.DefaultParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[net.jsign.commons.cli.MissingOptionException].<init>(java.util.List)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.DefaultParser:197"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.DefaultParser:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.DefaultParser:197,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.DefaultParser:199,1"
      Dst: "[net.jsign.commons.cli.MissingOptionException].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.MissingOptionException].<init>(java.util.List)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    - "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:56,1"
      Dst: "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    - Src: "net.jsign.commons.cli.MissingOptionException:56,1"
      Dst: "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.MissingOptionException].createMessage(java.util.List)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.MissingOptionException:81"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:80"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.MissingOptionException:85"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:93"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.MissingOptionException:88"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.MissingOptionException:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:80,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.MissingOptionException:81,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.MissingOptionException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.MissingOptionException:84,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.MissingOptionException:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.MissingOptionException:87,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.MissingOptionException:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.cli.MissingOptionException:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.MissingOptionException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.MissingOptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.MissingOptionException:44,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].printHelp()"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].<init>()"
    - "[net.jsign.commons.cli.HelpFormatter].setOptionComparator(java.util.Comparator)"
    - "[net.jsign.commons.cli.HelpFormatter].setWidth(int)"
    - "[net.jsign.commons.cli.HelpFormatter].setDescPadding(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.JsignCLI].getProgramName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:155,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].<init>()"
    - Src: "net.jsign.JsignCLI:156,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setOptionComparator(java.util.Comparator)"
    - Src: "net.jsign.JsignCLI:157,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setWidth(int)"
    - Src: "net.jsign.JsignCLI:158,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setDescPadding(int)"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[net.jsign.JsignCLI].getProgramName()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].<init>()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>(net.jsign.commons.cli.HelpFormatter$1)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:73,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:151,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:185,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>(net.jsign.commons.cli.HelpFormatter$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>(net.jsign.commons.cli.HelpFormatter$1)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter$OptionComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.HelpFormatter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter$OptionComparator:1072,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter$OptionComparator].<init>()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter$OptionComparator"
    linkageType: null
    functionLinenumber: -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.jsign.commons.cli.HelpFormatter$OptionComparator:1072,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].setOptionComparator(java.util.Comparator)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].setWidth(int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].setDescPadding(int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].getProgramName()"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:163,1"
      Dst: "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "net.jsign.commons.cli.Options"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:438,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "net.jsign.commons.cli.Options"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].getWidth()"
    - "[net.jsign.commons.cli.HelpFormatter].printHelp(int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:455,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getWidth()"
    - Src: "net.jsign.commons.cli.HelpFormatter:455,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printHelp(int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getWidth()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printHelp(int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "net.jsign.commons.cli.Options"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintWriter].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.cli.HelpFormatter].getLeftPadding()"
    - "[net.jsign.commons.cli.HelpFormatter].getDescPadding()"
    - "[net.jsign.commons.cli.HelpFormatter].printHelp(java.io.PrintWriter,int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,int,int,java.lang.String,boolean)"
    - "[java.io.PrintWriter].flush()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:490,1"
      Dst: "[java.io.PrintWriter].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.cli.HelpFormatter:492,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getLeftPadding()"
    - Src: "net.jsign.commons.cli.HelpFormatter:492,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getDescPadding()"
    - Src: "net.jsign.commons.cli.HelpFormatter:492,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.io.PrintWriter,int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,int,int,java.lang.String,boolean)"
    - Src: "net.jsign.commons.cli.HelpFormatter:493,1"
      Dst: "[java.io.PrintWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getLeftPadding()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getDescPadding()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.io.PrintWriter,int,java.lang.String,java.lang.String,net.jsign.commons.cli.Options,int,int,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "net.jsign.commons.cli.Options"
    - "int"
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String,net.jsign.commons.cli.Options)"
    - "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter].printOptions(java.io.PrintWriter,int,net.jsign.commons.cli.Options,int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:544"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:545"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:544"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:548"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:549"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:554"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:562"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:562"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:565"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:568"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:565"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:544,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:546,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:551,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String,net.jsign.commons.cli.Options)"
    - Src: "net.jsign.commons.cli.HelpFormatter:555,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:558,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.commons.cli.HelpFormatter:560,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:563,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printOptions(java.io.PrintWriter,int,net.jsign.commons.cli.Options,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String,net.jsign.commons.cli.Options)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "java.lang.String"
    - "net.jsign.commons.cli.Options"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].getSyntaxPrefix()"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.commons.cli.Options].getOptions()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - "[java.util.Collection].contains(java.lang.Object)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.commons.cli.HelpFormatter].appendOptionGroup(java.lang.StringBuffer,net.jsign.commons.cli.OptionGroup)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[net.jsign.commons.cli.HelpFormatter].appendOption(java.lang.StringBuffer,net.jsign.commons.cli.Option,boolean)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:588"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:592"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:593"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:632"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:602"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:621"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:605"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:624"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:625"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:628"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:582,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getSyntaxPrefix()"
    - Src: "net.jsign.commons.cli.HelpFormatter:582,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:582,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:585,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:587,1"
      Dst: "[net.jsign.commons.cli.Options].getOptions()"
    - Src: "net.jsign.commons.cli.HelpFormatter:587,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.cli.HelpFormatter:588,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:590,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "net.jsign.commons.cli.HelpFormatter:593,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:593,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.HelpFormatter:596,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.HelpFormatter:599,1"
      Dst: "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.HelpFormatter:605,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.HelpFormatter:608,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.commons.cli.HelpFormatter:612,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].appendOptionGroup(java.lang.StringBuffer,net.jsign.commons.cli.OptionGroup)"
    - Src: "net.jsign.commons.cli.HelpFormatter:622,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.HelpFormatter:622,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].appendOption(java.lang.StringBuffer,net.jsign.commons.cli.Option,boolean)"
    - Src: "net.jsign.commons.cli.HelpFormatter:633,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:633,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:633,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getSyntaxPrefix()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].helpOptions()"
    - "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:222,1"
      Dst: "[net.jsign.commons.cli.Options].helpOptions()"
    - Src: "net.jsign.commons.cli.Options:222,1"
      Dst: "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].helpOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:232,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.commons.cli.Options:232,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Comparator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].appendOptionGroup(java.lang.StringBuffer,net.jsign.commons.cli.OptionGroup)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.commons.cli.OptionGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.commons.cli.OptionGroup].getOptions()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.HelpFormatter].appendOption(java.lang.StringBuffer,net.jsign.commons.cli.Option,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:646"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:650"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:652"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:656"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:657"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:667"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:662"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:656"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:668"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:671"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:646,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - Src: "net.jsign.commons.cli.HelpFormatter:648,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:651,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].getOptions()"
    - Src: "net.jsign.commons.cli.HelpFormatter:651,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.cli.HelpFormatter:652,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:654,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "net.jsign.commons.cli.HelpFormatter:657,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:657,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.HelpFormatter:660,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.HelpFormatter:660,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].appendOption(java.lang.StringBuffer,net.jsign.commons.cli.Option,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.commons.cli.OptionGroup].getOptions()"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionGroup:76,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].appendOption(java.lang.StringBuffer,net.jsign.commons.cli.Option,boolean)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.commons.cli.Option"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.Option].hasArg()"
    - "[net.jsign.commons.cli.Option].getArgName()"
    - "[java.lang.String].length()"
    - "[net.jsign.commons.cli.HelpFormatter].getArgName()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:683"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:687"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:688"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:693"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:698"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:704"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:698"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:698"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:704"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:700"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:701"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:705"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:708"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:685,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:688,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.HelpFormatter:694,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.HelpFormatter:698,1"
      Dst: "[net.jsign.commons.cli.Option].hasArg()"
    - Src: "net.jsign.commons.cli.HelpFormatter:698,1"
      Dst: "[net.jsign.commons.cli.Option].getArgName()"
    - Src: "net.jsign.commons.cli.HelpFormatter:698,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:701,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getArgName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[net.jsign.commons.cli.Option].getArgName()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getArgName()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].<init>(int)"
    - "[net.jsign.commons.cli.HelpFormatter].renderWrappedTextBlock(java.lang.StringBuffer,int,int,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.io.PrintWriter].println(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:769,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:769,1"
      Dst: "[java.lang.StringBuffer].<init>(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:771,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].renderWrappedTextBlock(java.lang.StringBuffer,int,int,java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:772,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:772,1"
      Dst: "[java.io.PrintWriter].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].renderWrappedTextBlock(java.lang.StringBuffer,int,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Appendable"
    argCount: 4
    argTypes:
    - "java.lang.StringBuffer"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.BufferedReader].readLine()"
    - "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter].renderWrappedText(java.lang.StringBuffer,int,int,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:949"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:964"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:951"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:956"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:946,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:946,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "net.jsign.commons.cli.HelpFormatter:949,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "net.jsign.commons.cli.HelpFormatter:953,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    - Src: "net.jsign.commons.cli.HelpFormatter:953,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:959,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].renderWrappedText(java.lang.StringBuffer,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].renderWrappedText(java.lang.StringBuffer,int,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.StringBuffer"
    argCount: 4
    argTypes:
    - "java.lang.StringBuffer"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].findWrapPos(java.lang.String,int,int)"
    - "[net.jsign.commons.cli.HelpFormatter].rtrim(java.lang.String)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    - "[net.jsign.commons.cli.HelpFormatter].createPadding(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:895"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:900"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:903"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:909"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:917"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:923"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:924"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:928"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:924"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:928"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:893,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].findWrapPos(java.lang.String,int,int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:897,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].rtrim(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:897,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:901,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:901,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    - Src: "net.jsign.commons.cli.HelpFormatter:910,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].createPadding(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:914,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:914,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:914,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:914,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.commons.cli.HelpFormatter:914,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:924,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.commons.cli.HelpFormatter].findWrapPos(java.lang.String,int,int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:988"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:992"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:988"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:992"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:994"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:998"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:994"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:998"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:999"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1004"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1005"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1014"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1014"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1008"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1014"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1008"
      Branch Sides: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1015"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1020"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1023"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1020"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:987,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:999,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:1007,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 21
  - functionName: "[net.jsign.commons.cli.HelpFormatter].rtrim(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1050"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1051"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1050"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1054"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1057"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1061"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:1057"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:1061"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:1050,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:1057,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:1057,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "net.jsign.commons.cli.HelpFormatter:1062,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.HelpFormatter].createPadding(int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],char)"
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:1036,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    - Src: "net.jsign.commons.cli.HelpFormatter:1038,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printUsage(java.io.PrintWriter,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[net.jsign.commons.cli.HelpFormatter].getSyntaxPrefix()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:721,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getSyntaxPrefix()"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:723,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:756,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printWrapped(java.io.PrintWriter,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].printOptions(java.io.PrintWriter,int,net.jsign.commons.cli.Options,int,int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.PrintWriter"
    - "int"
    - "net.jsign.commons.cli.Options"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.commons.cli.HelpFormatter].renderOptions(java.lang.StringBuffer,int,net.jsign.commons.cli.Options,int,int)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.io.PrintWriter].println(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:741,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:743,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].renderOptions(java.lang.StringBuffer,int,net.jsign.commons.cli.Options,int,int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:744,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:744,1"
      Dst: "[java.io.PrintWriter].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].renderOptions(java.lang.StringBuffer,int,net.jsign.commons.cli.Options,int,int)"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.StringBuffer"
    argCount: 5
    argTypes:
    - "java.lang.StringBuffer"
    - "int"
    - "net.jsign.commons.cli.Options"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].createPadding(int)"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.commons.cli.Options].helpOptions()"
    - "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter].getLongOptPrefix()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.HelpFormatter].getOptPrefix()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[java.lang.StringBuffer].append(char)"
    - "[net.jsign.commons.cli.Option].hasArg()"
    - "[net.jsign.commons.cli.Option].getArgName()"
    - "[java.lang.String].length()"
    - "[net.jsign.commons.cli.HelpFormatter].getArgName()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuffer].length()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getDescription()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.HelpFormatter].renderWrappedText(java.lang.StringBuffer,int,int,java.lang.String)"
    - "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    functionUses: 0
    ICount: 106
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.HelpFormatter:805"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:809"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:810"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:847"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:846"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:814"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:822"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:827"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:828"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:842"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:831"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:837"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:831"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:837"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:838"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:838"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:837"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:839"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:837"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:844"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:843"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:842"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:849"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:854"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:858"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:863"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:867"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.HelpFormatter:870"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.HelpFormatter:873"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.HelpFormatter:793,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].createPadding(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:801,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:803,1"
      Dst: "[net.jsign.commons.cli.Options].helpOptions()"
    - Src: "net.jsign.commons.cli.HelpFormatter:805,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getOptionComparator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:807,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "net.jsign.commons.cli.HelpFormatter:810,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.HelpFormatter:810,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.HelpFormatter:810,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.HelpFormatter:812,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.commons.cli.HelpFormatter:814,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.HelpFormatter:816,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:816,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getLongOptPrefix()"
    - Src: "net.jsign.commons.cli.HelpFormatter:816,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.HelpFormatter:820,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getOptPrefix()"
    - Src: "net.jsign.commons.cli.HelpFormatter:822,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.HelpFormatter:824,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.commons.cli.HelpFormatter:828,1"
      Dst: "[net.jsign.commons.cli.Option].hasArg()"
    - Src: "net.jsign.commons.cli.HelpFormatter:830,1"
      Dst: "[net.jsign.commons.cli.Option].getArgName()"
    - Src: "net.jsign.commons.cli.HelpFormatter:831,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:839,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getArgName()"
    - Src: "net.jsign.commons.cli.HelpFormatter:843,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.commons.cli.HelpFormatter:844,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:852,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.cli.HelpFormatter:852,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:852,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:854,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "net.jsign.commons.cli.HelpFormatter:856,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:863,1"
      Dst: "[net.jsign.commons.cli.Option].getDescription()"
    - Src: "net.jsign.commons.cli.HelpFormatter:868,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.HelpFormatter:868,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].renderWrappedText(java.lang.StringBuffer,int,int,java.lang.String)"
    - Src: "net.jsign.commons.cli.HelpFormatter:872,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].getNewLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 15
    BBCount: 33
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getLongOptPrefix()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.HelpFormatter].getOptPrefix()"
    functionSourceFile: "net.jsign.commons.cli.HelpFormatter"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].hasLongOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:280"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Option].getDescription()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 299
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.StdOutConsole].<init>(int)"
    functionSourceFile: "net.jsign.StdOutConsole"
    linkageType: null
    functionLinenumber: -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.jsign.StdOutConsole:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].<init>(net.jsign.Console,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Console"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.SignerHelper:105,1"
      Dst: "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].setOption(java.lang.String,net.jsign.SignerHelper,net.jsign.commons.cli.CommandLine)"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.SignerHelper"
    - "net.jsign.commons.cli.CommandLine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:140,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - Src: "net.jsign.JsignCLI:141,1"
      Dst: "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:144,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.Option].getValuesList()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:180"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:170,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[net.jsign.commons.cli.Option].getValuesList()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.commons.cli.Option].getValuesList()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.SignerHelper"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.SignerHelper].keystore(java.lang.String)"
    - "[net.jsign.SignerHelper].storepass(java.lang.String)"
    - "[net.jsign.SignerHelper].storetype(java.lang.String)"
    - "[net.jsign.SignerHelper].alias(java.lang.String)"
    - "[net.jsign.SignerHelper].keypass(java.lang.String)"
    - "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    - "[net.jsign.SignerHelper].certfile(java.lang.String)"
    - "[net.jsign.SignerHelper].alg(java.lang.String)"
    - "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    - "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.SignerHelper].tsretries(int)"
    - "[net.jsign.SignerHelper].tsretrywait(int)"
    - "[net.jsign.SignerHelper].name(java.lang.String)"
    - "[net.jsign.SignerHelper].url(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[net.jsign.SignerHelper].replace(boolean)"
    - "[net.jsign.SignerHelper].encoding(java.lang.String)"
    - "[net.jsign.SignerHelper].detached(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:219"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:223,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "net.jsign.SignerHelper:223,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:224,1"
      Dst: "[net.jsign.SignerHelper].keystore(java.lang.String)"
    - Src: "net.jsign.SignerHelper:225,1"
      Dst: "[net.jsign.SignerHelper].storepass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:226,1"
      Dst: "[net.jsign.SignerHelper].storetype(java.lang.String)"
    - Src: "net.jsign.SignerHelper:227,1"
      Dst: "[net.jsign.SignerHelper].alias(java.lang.String)"
    - Src: "net.jsign.SignerHelper:228,1"
      Dst: "[net.jsign.SignerHelper].keypass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:229,1"
      Dst: "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    - Src: "net.jsign.SignerHelper:230,1"
      Dst: "[net.jsign.SignerHelper].certfile(java.lang.String)"
    - Src: "net.jsign.SignerHelper:231,1"
      Dst: "[net.jsign.SignerHelper].alg(java.lang.String)"
    - Src: "net.jsign.SignerHelper:232,1"
      Dst: "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    - Src: "net.jsign.SignerHelper:233,1"
      Dst: "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    - Src: "net.jsign.SignerHelper:234,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.SignerHelper:234,1"
      Dst: "[net.jsign.SignerHelper].tsretries(int)"
    - Src: "net.jsign.SignerHelper:235,1"
      Dst: "[net.jsign.SignerHelper].tsretrywait(int)"
    - Src: "net.jsign.SignerHelper:236,1"
      Dst: "[net.jsign.SignerHelper].name(java.lang.String)"
    - Src: "net.jsign.SignerHelper:237,1"
      Dst: "[net.jsign.SignerHelper].url(java.lang.String)"
    - Src: "net.jsign.SignerHelper:238,1"
      Dst: "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    - Src: "net.jsign.SignerHelper:239,1"
      Dst: "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    - Src: "net.jsign.SignerHelper:240,1"
      Dst: "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:241,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.SignerHelper:241,1"
      Dst: "[net.jsign.SignerHelper].replace(boolean)"
    - Src: "net.jsign.SignerHelper:242,1"
      Dst: "[net.jsign.SignerHelper].encoding(java.lang.String)"
    - Src: "net.jsign.SignerHelper:243,1"
      Dst: "[net.jsign.SignerHelper].detached(boolean)"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 41
    BBCount: 65
  - functionName: "[net.jsign.SignerHelper].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:109,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:114,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:119,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - "[net.jsign.KeyStoreType].values()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:122"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreType].values()"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.SignerHelper].alias(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keypass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:129,1"
      Dst: "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:134,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:167,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:167,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].certfile(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:144,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:186,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:186,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].alg(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsretries(int)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsretrywait(int)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].name(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].url(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].replace(boolean)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].encoding(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:209,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].detached(boolean)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getArgList()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.SignerException"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].sign(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - "[net.jsign.Console].info(java.lang.String)"
    - "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.SignerHelper].build()"
    - "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - "[java.io.Closeable].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:369"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:372"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:371"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:372"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:376"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:375"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:380"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:389"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:393"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:398"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:403"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:376"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:404"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:370,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:372,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:376,1"
      Dst: "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - Src: "net.jsign.SignerHelper:377,1"
      Dst: "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - Src: "net.jsign.SignerHelper:381,1"
      Dst: "[net.jsign.Console].info(java.lang.String)"
    - Src: "net.jsign.SignerHelper:383,1"
      Dst: "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:385,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:390,1"
      Dst: "[net.jsign.SignerHelper].build()"
    - Src: "net.jsign.SignerHelper:396,1"
      Dst: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - Src: "net.jsign.SignerHelper:399,1"
      Dst: "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:403,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 27
  - functionName: "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getParentFile()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].getParentFile()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Signable"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:413,1"
      Dst: "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.SignerHelper:416,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.SignerHelper:417,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: 2649
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllBytes(java.nio.file.Path)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2650,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2651,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2651,1"
      Dst: "[java.nio.file.Files].readAllBytes(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - "[java.io.FilterInputStream].read()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "loadTaggedIL(int,int)"
        - "readLength()"
        - "readTagNumber(java.io.InputStream,int)"
        - "parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
        - "<init>(java.io.InputStream,int)"
        - "<init>(java.io.InputStream,int,byte[][])"
        - "buildObject(int,int,int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.FilterInputStream].read()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readTagNumber(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readLength()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].buildObject(int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].<init>(java.io.InputStream,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].<init>(java.io.InputStream,int,byte[][])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1StreamParser].loadTaggedIL(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERBitStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetStringParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERExternalParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequenceParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSetParser].parse(net.jsign.bouncycastle.asn1.ASN1StreamParser)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 16
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.ContentInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSProcessable"
    - "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    - "[java.lang.Object].<init>()"
    functionUses: 15
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "getSignedData()"
        - "<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData$1].<init>(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSProcessable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignedData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.SignerException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerException:31,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].build()"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].build()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreBuilder].provider()"
    - "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.Set].isEmpty()"
    - "[java.security.Provider].getName()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - "[java.security.KeyStore].aliases()"
    - "[java.util.Collections].list(java.util.Enumeration)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    - "[net.jsign.KeyStoreType].hasCertificate()"
    - "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.KeyStoreBuilder].keypass()"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    - "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    - "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    - "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    - "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    - "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - "[net.jsign.timestamp.TimestampingMode].of(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    - "[java.lang.String].split(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 277
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:258"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:264"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:272"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:274"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:273"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:273"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:273"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:274"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:287"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:305"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:288"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:288"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:289"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:303"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:302"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:292"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:293"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:294"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:297"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:296"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:305"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:305"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:306"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:311"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:312"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:316"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:315"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:327"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:340"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:345"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:344"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:340"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:345"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:344"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:356"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:356"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:358"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:361"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:256,1"
      Dst: "[net.jsign.KeyStoreBuilder].build()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.SignerHelper:261,1"
      Dst: "[net.jsign.KeyStoreBuilder].provider()"
    - Src: "net.jsign.SignerHelper:267,1"
      Dst: "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    - Src: "net.jsign.SignerHelper:269,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.SignerHelper:272,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "net.jsign.SignerHelper:273,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.SignerHelper:273,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:274,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.SignerHelper:275,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.SignerHelper:275,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.SignerHelper:277,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.SignerHelper:283,1"
      Dst: "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.security.KeyStore].aliases()"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.util.Collections].list(java.util.Enumeration)"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.SignerHelper:294,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:305,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    - Src: "net.jsign.SignerHelper:305,1"
      Dst: "[net.jsign.KeyStoreType].hasCertificate()"
    - Src: "net.jsign.SignerHelper:311,1"
      Dst: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - Src: "net.jsign.SignerHelper:312,1"
      Dst: "[java.security.cert.Certificate].equals(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:316,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:325,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.SignerHelper:326,1"
      Dst: "[net.jsign.KeyStoreBuilder].keypass()"
    - Src: "net.jsign.SignerHelper:327,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.SignerHelper:328,1"
      Dst: "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    - Src: "net.jsign.SignerHelper:335,1"
      Dst: "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - Src: "net.jsign.SignerHelper:340,1"
      Dst: "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - Src: "net.jsign.SignerHelper:345,1"
      Dst: "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.SignerHelper:351,1"
      Dst: "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    - Src: "net.jsign.SignerHelper:352,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    - Src: "net.jsign.SignerHelper:353,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    - Src: "net.jsign.SignerHelper:354,1"
      Dst: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.SignerHelper:355,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    - Src: "net.jsign.SignerHelper:356,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    - Src: "net.jsign.SignerHelper:357,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - Src: "net.jsign.SignerHelper:358,1"
      Dst: "[net.jsign.timestamp.TimestampingMode].of(java.lang.String)"
    - Src: "net.jsign.SignerHelper:358,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    - Src: "net.jsign.SignerHelper:359,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    - Src: "net.jsign.SignerHelper:360,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    - Src: "net.jsign.SignerHelper:361,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.SignerHelper:361,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 69
  - functionName: "[net.jsign.KeyStoreBuilder].build()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.KeyStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].validate()"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreBuilder].provider()"
    - "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:280,1"
      Dst: "[net.jsign.KeyStoreBuilder].validate()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreBuilder].provider()"
    - Src: "net.jsign.KeyStoreBuilder:281,1"
      Dst: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreType].of(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:133"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:140"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreType].of(java.io.File)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreBuilder].provider()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:267"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:270"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:268,1"
      Dst: "[net.jsign.KeyStoreType].getProvider(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.security.KeyStore"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].aliases()"
    - "[java.util.Collections].list(java.util.Enumeration)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.security.KeyStore].aliases()"
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.util.Collections].list(java.util.Enumeration)"
    - Src: "net.jsign.KeyStoreType:542,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].hasCertificate()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    functionSourceFile: "net.jsign.CertificateUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.CertificateUtils].getChainComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.CertificateUtils:44,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.CertificateUtils:45,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - Src: "net.jsign.CertificateUtils:46,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificates(java.io.InputStream)"
    - Src: "net.jsign.CertificateUtils:47,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[net.jsign.CertificateUtils].getChainComparator()"
    - Src: "net.jsign.CertificateUtils:48,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.CertificateUtils:50,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.CertificateUtils:49,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keypass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:159,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.DigestAlgorithm"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[net.jsign.DigestAlgorithm].values()"
    - "[java.lang.Enum].name()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.DigestAlgorithm:68"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:73"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:78"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:74"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:72"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.DigestAlgorithm:79"
      Branch Sides:
      - BranchSide: "net.jsign.DigestAlgorithm:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.DigestAlgorithm:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.DigestAlgorithm:72,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.DigestAlgorithm:72,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "net.jsign.DigestAlgorithm:73,1"
      Dst: "[net.jsign.DigestAlgorithm].values()"
    - Src: "net.jsign.DigestAlgorithm:74,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.DigestAlgorithm:74,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].getPort()"
    - "[net.jsign.SignerHelper$1].<init>(net.jsign.SignerHelper,java.net.URL,int)"
    - "[java.net.ProxySelector].setDefault(java.net.ProxySelector)"
    - "[net.jsign.SignerHelper$2].<init>(net.jsign.SignerHelper,java.lang.String,java.lang.String)"
    - "[java.net.Authenticator].setDefault(java.net.Authenticator)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:441"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:441"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:442"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:445"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:444"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:446"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:444"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:441,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.SignerHelper:441,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.SignerHelper:442,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:445,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:446,1"
      Dst: "[java.net.URL].getPort()"
    - Src: "net.jsign.SignerHelper:448,1"
      Dst: "[net.jsign.SignerHelper$1].<init>(net.jsign.SignerHelper,java.net.URL,int)"
    - Src: "net.jsign.SignerHelper:448,1"
      Dst: "[java.net.ProxySelector].setDefault(java.net.ProxySelector)"
    - Src: "net.jsign.SignerHelper:467,1"
      Dst: "[net.jsign.SignerHelper$2].<init>(net.jsign.SignerHelper,java.lang.String,java.lang.String)"
    - Src: "net.jsign.SignerHelper:467,1"
      Dst: "[java.net.Authenticator].setDefault(java.net.Authenticator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[net.jsign.SignerHelper$1].<init>(net.jsign.SignerHelper,java.net.URL,int)"
    functionSourceFile: "net.jsign.SignerHelper$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.SignerHelper"
    - "java.net.URL"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ProxySelector].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper$1:448,1"
      Dst: "[java.net.ProxySelector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper$2].<init>(net.jsign.SignerHelper,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.SignerHelper"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Authenticator].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper$2:467,1"
      Dst: "[java.net.Authenticator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.Certificate[]"
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.DigestAlgorithm].getDefault()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:126"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:127"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:126"
        BranchSideFuncs: []
    - Branch String: "net.jsign.AuthenticodeSigner:126"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:122,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.AuthenticodeSigner:102,1"
      Dst: "[net.jsign.DigestAlgorithm].getDefault()"
    - Src: "net.jsign.AuthenticodeSigner:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.DigestAlgorithm].getDefault()"
    functionSourceFile: "net.jsign.DigestAlgorithm"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "net.jsign.DigestAlgorithm"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.DigestAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:277"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:280"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.timestamp.TimestampingMode].of(java.lang.String)"
    functionSourceFile: "net.jsign.timestamp.TimestampingMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.timestamp.TimestampingMode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.timestamp.TimestampingMode].values()"
    - "[java.lang.Enum].name()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.timestamp.TimestampingMode:34"
      Branch Sides:
      - BranchSide: "net.jsign.timestamp.TimestampingMode:40"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.timestamp.TimestampingMode:39"
        BranchSideFuncs: []
    - Branch String: "net.jsign.timestamp.TimestampingMode:35"
      Branch Sides:
      - BranchSide: "net.jsign.timestamp.TimestampingMode:34"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.timestamp.TimestampingMode:33"
        BranchSideFuncs: []
    - Branch String: "net.jsign.timestamp.TimestampingMode:40"
      Branch Sides:
      - BranchSide: "net.jsign.timestamp.TimestampingMode:44"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.timestamp.TimestampingMode:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.timestamp.TimestampingMode:34,1"
      Dst: "[net.jsign.timestamp.TimestampingMode].values()"
    - Src: "net.jsign.timestamp.TimestampingMode:35,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.timestamp.TimestampingMode:35,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.timestamp.TimestampingMode:44,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.timestamp.TimestampingMode:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.timestamp.TimestampingMode:44,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.timestamp.TimestampingMode:44,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.timestamp.TimestampingMode].values()"
    functionSourceFile: "net.jsign.timestamp.TimestampingMode"
    linkageType: null
    functionLinenumber: 24
    functionDepth: 0
    returnType: "net.jsign.timestamp.TimestampingMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.timestamp.TimestampingMode:25,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "net.jsign.timestamp.TimestampingMode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    functionSourceFile: "net.jsign.AuthenticodeSigner"
    linkageType: null
    functionLinenumber: 352
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.Signable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.appx.APPXFile].validate(java.security.cert.Certificate)"
    - "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - "[net.jsign.mscab.MSCabinetFile].getSignatures()"
    - "[net.jsign.script.JScript].getSignatures()"
    - "[net.jsign.script.PowerShellXMLScript].getSignatures()"
    - "[net.jsign.cat.CatalogFile].getSignatures()"
    - "[net.jsign.script.WindowsScript].getSignatures()"
    - "[net.jsign.msi.MSIFile].getSignatures()"
    - "[net.jsign.script.VBScript].getSignatures()"
    - "[net.jsign.appx.APPXFile].getSignatures()"
    - "[net.jsign.script.PowerShellScript].getSignatures()"
    - "[net.jsign.nuget.NugetFile].getSignatures()"
    - "[net.jsign.navx.NAVXFile].getSignatures()"
    - "[net.jsign.pe.PEFile].getSignatures()"
    - "[net.jsign.script.SignableScript].getSignatures()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].get(int)"
    - "[net.jsign.script.PowerShellScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.mscab.MSCabinetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.appx.APPXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.PowerShellXMLScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.JScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.SignableScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.cat.CatalogFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.VBScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.script.WindowsScript].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.navx.NAVXFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.pe.PEFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.msi.MSIFile].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.nuget.NugetFile].save()"
    - "[net.jsign.script.VBScript].save()"
    - "[net.jsign.script.PowerShellXMLScript].save()"
    - "[net.jsign.appx.APPXFile].save()"
    - "[net.jsign.script.PowerShellScript].save()"
    - "[net.jsign.msi.MSIFile].save()"
    - "[net.jsign.script.SignableScript].save()"
    - "[net.jsign.script.WindowsScript].save()"
    - "[net.jsign.navx.NAVXFile].save()"
    - "[net.jsign.cat.CatalogFile].save()"
    - "[net.jsign.script.JScript].save()"
    - "[net.jsign.mscab.MSCabinetFile].save()"
    - "[net.jsign.pe.PEFile].save()"
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 1
    ICount: 28
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:355"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:357"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:362"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "net.jsign.AuthenticodeSigner:361"
        BranchSideFuncs:
        - "createSignedData(net.jsign.Signable)"
    - Branch String: "net.jsign.AuthenticodeSigner:364"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:372"
        BranchSideFuncs:
        - "getSignatures()"
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Branch String: "net.jsign.AuthenticodeSigner:366"
      Branch Sides:
      - BranchSide: "net.jsign.AuthenticodeSigner:371"
        BranchSideFuncs:
        - "save()"
        - "setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    Callsites:
    - Src: "net.jsign.AuthenticodeSigner:353,1"
      Dst: "[net.jsign.Signable].validate(java.security.cert.Certificate)"
    - Src: "net.jsign.AuthenticodeSigner:356,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.AuthenticodeSigner:357,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.AuthenticodeSigner:358,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.AuthenticodeSigner:362,1"
      Dst: "[net.jsign.AuthenticodeSigner].createSignedData(net.jsign.Signable)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.AuthenticodeSigner:368,1"
      Dst: "[net.jsign.AuthenticodeSigner].addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:372,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.AuthenticodeSigner:373,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Signable"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].get(int)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:422,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.SignerHelper:422,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.SignerHelper:423,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.SignerHelper:423,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.SignerHelper:425,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.cms.ContentInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3218,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3232,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3268"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3266"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3266,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3267,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.commons.io.FileUtils:3268,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3269,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1287"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1286"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1287,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.OutputStream"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1291"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1292"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1291"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1292"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1291"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1294"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1295"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1293"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1291,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1292,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1294,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1294,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1295,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1296,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1296,1"
      Dst: "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:698"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:699,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:700,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.PathUtils].readIfSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].createDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:397"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:398"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:401"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:396,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:397,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readIfSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:401,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:402,1"
      Dst: "[java.nio.file.Files].createDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].getParent()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1013"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1012"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1013,1"
      Dst: "[java.nio.file.Path].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].readIfSymbolicLink(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].readSymbolicLink(java.nio.file.Path)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1395"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1394"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1395"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1394"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1395,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1395,1"
      Dst: "[java.nio.file.Files].readSymbolicLink(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.JsignCLI].setOption(java.lang.String,net.jsign.SignerHelper,net.jsign.commons.cli.CommandLine)"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.SignerHelper"
    - "net.jsign.commons.cli.CommandLine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:140,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - Src: "net.jsign.JsignCLI:141,1"
      Dst: "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].printHelp()"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.HelpFormatter].<init>()"
    - "[net.jsign.commons.cli.HelpFormatter].setOptionComparator(java.util.Comparator)"
    - "[net.jsign.commons.cli.HelpFormatter].setWidth(int)"
    - "[net.jsign.commons.cli.HelpFormatter].setDescPadding(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.JsignCLI].getProgramName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:155,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].<init>()"
    - Src: "net.jsign.JsignCLI:156,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setOptionComparator(java.util.Comparator)"
    - Src: "net.jsign.JsignCLI:157,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setWidth(int)"
    - Src: "net.jsign.JsignCLI:158,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].setDescPadding(int)"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[net.jsign.JsignCLI].getProgramName()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.JsignCLI:159,1"
      Dst: "[net.jsign.commons.cli.HelpFormatter].printHelp(java.lang.String,java.lang.String,net.jsign.commons.cli.Options,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.JsignCLI].getProgramName()"
    functionSourceFile: "net.jsign.JsignCLI"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.JsignCLI:163,1"
      Dst: "[java.lang.System].getProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].<init>(net.jsign.pe.PEFile,int)"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.pe.PEFile"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 4
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getFormat()"
    - "[java.lang.Enum].equals(java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFile:246"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:245"
        BranchSideFuncs:
        - "getFormat()"
    Callsites:
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[net.jsign.pe.PEFile].getFormat()"
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[java.lang.Enum].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.pe.PEFile].getFormat()"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 2
    returnType: "net.jsign.pe.PEFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].readWord(long,int)"
    - "[net.jsign.pe.PEFormat].valueOf(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:193,1"
      Dst: "[net.jsign.pe.PEFile].readWord(long,int)"
    - Src: "net.jsign.pe.PEFile:193,1"
      Dst: "[net.jsign.pe.PEFormat].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].readWord(long,int)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].read(long,int,int)"
    - "[java.nio.ByteBuffer].getShort()"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:172,1"
      Dst: "[net.jsign.pe.PEFile].read(long,int,int)"
    - Src: "net.jsign.pe.PEFile:173,1"
      Dst: "[java.nio.ByteBuffer].getShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].read(long,int,int)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].rewind()"
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:164,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.pe.PEFile:165,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.pe.PEFile:166,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.pe.PEFile:167,1"
      Dst: "[java.nio.channels.SeekableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.pe.PEFile:168,1"
      Dst: "[java.nio.ByteBuffer].rewind()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFormat].valueOf(int)"
    functionSourceFile: "net.jsign.pe.PEFormat"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "net.jsign.pe.PEFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFormat].values()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFormat:40"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFormat:46"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "net.jsign.pe.PEFormat:45"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.PEFormat:41"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFormat:40"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFormat:39"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "net.jsign.pe.PEFormat:40,1"
      Dst: "[net.jsign.pe.PEFormat].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.pe.PEFormat].values()"
    functionSourceFile: "net.jsign.pe.PEFormat"
    linkageType: null
    functionLinenumber: 24
    functionDepth: 0
    returnType: "net.jsign.pe.PEFormat[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFormat:25,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].read(long,int,int)"
    - "[java.nio.ByteBuffer].getInt()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:177,1"
      Dst: "[net.jsign.pe.PEFile].read(long,int,int)"
    - Src: "net.jsign.pe.PEFile:178,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].getSize()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getFormat()"
    - "[java.lang.Enum].equals(java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFile:246"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:245"
        BranchSideFuncs:
        - "getFormat()"
    Callsites:
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[net.jsign.pe.PEFile].getFormat()"
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[java.lang.Enum].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].read(long,int,int)"
    - "[java.nio.ByteBuffer].getInt()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:177,1"
      Dst: "[net.jsign.pe.PEFile].read(long,int,int)"
    - Src: "net.jsign.pe.PEFile:178,1"
      Dst: "[java.nio.ByteBuffer].getInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].exists()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.DataDirectory].getSize()"
    - "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.pe.DataDirectory:48"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:47"
        BranchSideFuncs:
        - "getVirtualAddress()"
        - "getSize()"
    - Branch String: "net.jsign.pe.DataDirectory:48"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:47"
        BranchSideFuncs:
        - "getVirtualAddress()"
        - "getSize()"
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:48,1"
      Dst: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    - Src: "net.jsign.pe.DataDirectory:48,1"
      Dst: "[net.jsign.pe.DataDirectory].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 4
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].getSize()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].check()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    - "[net.jsign.pe.DataDirectory].getSize()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.pe.DataDirectory:61"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:62"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.DataDirectory:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.DataDirectory:61"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:62"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.DataDirectory:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.pe.DataDirectory:61"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:64"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.DataDirectory:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:58,1"
      Dst: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    - Src: "net.jsign.pe.DataDirectory:59,1"
      Dst: "[net.jsign.pe.DataDirectory].getSize()"
    - Src: "net.jsign.pe.DataDirectory:61,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.pe.DataDirectory:62,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 4
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].getSize()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].isTrailing()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.DataDirectory].getSize()"
    - "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    - "[java.nio.channels.SeekableByteChannel].size()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.pe.DataDirectory:74"
      Branch Sides:
      - BranchSide: "net.jsign.pe.DataDirectory:73"
        BranchSideFuncs:
        - "getVirtualAddress()"
        - "getSize()"
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:74,1"
      Dst: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    - Src: "net.jsign.pe.DataDirectory:74,1"
      Dst: "[net.jsign.pe.DataDirectory].getSize()"
    - Src: "net.jsign.pe.DataDirectory:74,1"
      Dst: "[java.nio.channels.SeekableByteChannel].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.pe.DataDirectory].getVirtualAddress()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 4
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:40,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].getSize()"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].readDWord(long,int)"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:44,1"
      Dst: "[net.jsign.pe.PEFile].readDWord(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.DataDirectory].write(long,int)"
    functionSourceFile: "net.jsign.pe.DataDirectory"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - "[net.jsign.pe.PEFile].write(long,java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 3
    ICount: 19
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.pe.DataDirectory:78,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.pe.DataDirectory:79,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "net.jsign.pe.DataDirectory:80,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "net.jsign.pe.DataDirectory:82,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.pe.DataDirectory:83,1"
      Dst: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    - Src: "net.jsign.pe.DataDirectory:83,1"
      Dst: "[net.jsign.pe.PEFile].write(long,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.pe.PEFile].getDataDirectoryOffset()"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.pe.PEFile].getFormat()"
    - "[java.lang.Enum].equals(java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFile:246"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:245"
        BranchSideFuncs:
        - "getFormat()"
    Callsites:
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[net.jsign.pe.PEFile].getFormat()"
    - Src: "net.jsign.pe.PEFile:246,1"
      Dst: "[java.lang.Enum].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.pe.PEFile].write(long,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.pe.PEFile"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SeekableByteChannel].position(long)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.pe.PEFile:187"
      Branch Sides:
      - BranchSide: "net.jsign.pe.PEFile:190"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.pe.PEFile:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.pe.PEFile:186,1"
      Dst: "[java.nio.channels.SeekableByteChannel].position(long)"
    - Src: "net.jsign.pe.PEFile:187,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "net.jsign.pe.PEFile:188,1"
      Dst: "[java.nio.channels.SeekableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 122
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 122
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].squareN(int[],int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].isOne(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].squareN(int[],int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 122
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].init()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:66,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:67,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:68,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getProperties()"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "net.jsign.log4j.util.PropertiesUtil"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getIntegerProperty(java.lang.String,int)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PropertiesUtil:272"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PropertiesUtil:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:271,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getStringProperty(java.lang.String)"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.log4j.util.PropertiesUtil:274,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.PropertiesUtil"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PropertiesUtil:158,1"
      Dst: "[net.jsign.log4j.util.PropertiesUtil].getBooleanProperty(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].<init>()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createThreadLocalMap()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:79,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createThreadLocalMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createThreadLocalMap()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "java.lang.ThreadLocal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap)"
    - "[java.lang.ThreadLocal].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:85"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:99"
        BranchSideFuncs:
        - "<init>(net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap)"
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:86,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:99,1"
      Dst: "[java.lang.ThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1].<init>(net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.InheritableThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap$1:86,1"
      Dst: "[java.lang.InheritableThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:110,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:126"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:129"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:125,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:129,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].put(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:128,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:133"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:133,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:135,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:136,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:137,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:110,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:133"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:133,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:134,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:135,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:136,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:137,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putAll(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[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()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:142"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:143"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:142"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:142"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:146"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:147"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:150"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:142,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:145,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:146,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:146,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:147,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:147,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:147,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:147,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:148,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:148,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:148,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:150,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:151,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:110,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].putAllValues(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[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()"
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:156"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:160"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:161"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:164"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:156,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:159,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:160,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:160,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:161,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:161,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:162,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:162,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:162,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:164,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:165,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:110,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].get(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:170,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:176"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:175,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:176,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:176"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:175,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:176,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].getValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].remove(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:188"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:181,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:183,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:184,1"
      Dst: "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:185,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:186,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].removeAll(java.lang.Iterable)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    - "[net.jsign.log4j.util.StringMap].freeze()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:193"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:195"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:198"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:192,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:194,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:195,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:195,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:195,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:196,1"
      Dst: "[net.jsign.log4j.util.StringMap].remove(java.lang.String)"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:198,1"
      Dst: "[net.jsign.log4j.util.StringMap].freeze()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:199,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].createStringMap(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:123,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].clear()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].remove()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:205,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].containsKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].containsKey(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:211"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:211"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:210,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:211,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].containsKey(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getCopy()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:217"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:216,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:217,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:217,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getReadOnlyContextData()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.log4j.util.StringMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:226"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:225,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toMap()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:230"
        BranchSideFuncs:
        - "toMap()"
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:231,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].isEmpty()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:238"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:236"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:238"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:237,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:238,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].toString()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toString()"
    - "[java.lang.ThreadLocal].get()"
    - "[java.lang.Object].toString()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:244"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:242"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:243,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:244,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].hashCode()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.StringMap].hashCode()"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:252"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:251"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:250"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:251,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:252,1"
      Dst: "[net.jsign.log4j.util.StringMap].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 257
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.NoOpThreadContextMap].getImmutableMapOrNull()"
    - "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:258"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:261"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:260"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:261"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:264"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:267"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:266"
        BranchSideFuncs:
        - "getImmutableMapOrNull()"
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:268,1"
      Dst: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:269,1"
      Dst: "[net.jsign.log4j.spi.ThreadContextMap].getImmutableMapOrNull()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:270,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].getImmutableMapOrNull()"
    functionSourceFile: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].toMap()"
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:230"
        BranchSideFuncs:
        - "toMap()"
    Callsites:
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:231,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].toMap()"
    - Src: "net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap:232,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.input.BoundedInputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:246,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream$Builder].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream$Builder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream$AbstractBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream$Builder:209,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream$AbstractBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:270,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 283
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:284,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].<init>(java.io.InputStream,long,long,boolean)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 299
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:300,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].afterRead(int)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:315"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:318"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:317"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].available()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - "[java.io.InputStream].available()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:325"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:329"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:325,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:326,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:326,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:329,1"
      Dst: "[java.io.InputStream].available()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:387,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].close()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[java.io.InputStream].close()"
    functionUses: 17
    ICount: 6
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:339"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:342"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:340,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getMaxLength()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getRemaining()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getMaxCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[java.lang.Math].max(long,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:383,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getMaxCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:383,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:383,1"
      Dst: "[java.lang.Math].max(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:387,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].isPropagateClose()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].mark(int)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].mark(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:406,1"
      Dst: "[java.io.InputStream].mark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].markSupported()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].markSupported()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:416,1"
      Dst: "[java.io.InputStream].markSupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].read()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    functionUses: 29
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:440"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:444"
        BranchSideFuncs:
        - "onMaxLength(long,long)"
        - "getCount()"
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:443"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:440,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:441,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:441,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:444,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:387,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].read(byte[])"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 455
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:456,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 469
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionUses: 22
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:474"
        BranchSideFuncs:
        - "onMaxLength(long,long)"
        - "getCount()"
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:473"
        BranchSideFuncs:
        - "toReadLen(long)"
        - "read(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:470,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:471,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:471,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:474,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:474,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:387"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:386"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:387,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 513
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:514"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:513"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 469
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionUses: 22
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:474"
        BranchSideFuncs:
        - "onMaxLength(long,long)"
        - "getCount()"
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:473"
        BranchSideFuncs:
        - "toReadLen(long)"
        - "read(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:470,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].isMaxCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:471,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:471,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].onMaxLength(long,long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:474,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:474,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].reset()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].reset()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:484,1"
      Dst: "[java.io.InputStream].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].setPropagateClose(boolean)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].skip(long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 507
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ProxyInputStream].skip(long)"
    - "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:508,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:508,1"
      Dst: "[net.jsign.commons.io.input.ProxyInputStream].skip(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 513
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:514"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:513"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].toReadLen(long)"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 513
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.input.BoundedInputStream:514"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.input.BoundedInputStream:513"
        BranchSideFuncs:
        - "getCount()"
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[net.jsign.commons.io.input.BoundedInputStream].getCount()"
    - Src: "net.jsign.commons.io.input.BoundedInputStream:514,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.input.BoundedInputStream].toString()"
    functionSourceFile: "net.jsign.commons.io.input.BoundedInputStream"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.BoundedInputStream].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.BoundedInputStream:524,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$CBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$CBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$CBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESEngine].newInstance()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$CBC:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].newInstance(net.jsign.bouncycastle.crypto.BlockCipher)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$CBC:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.math.BigInteger].divide(java.math.BigInteger)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:225"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:227"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:229"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:231"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:230"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:231"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:233"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:232"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:235"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:234"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:235"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:238"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:222,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:225,1"
      Dst: "[java.math.BigInteger].divide(java.math.BigInteger)"
    - Src: "net.jsign.commons.io.FileUtils:225,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:259,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.commons.io.FileUtils:259,1"
      Dst: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.math.BigInteger].divide(java.math.BigInteger)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:225"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:227"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:229"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:228"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:229"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:231"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:230"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:231"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:233"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:232"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:235"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:234"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:235"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:238"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:222,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:225,1"
      Dst: "[java.math.BigInteger].divide(java.math.BigInteger)"
    - Src: "net.jsign.commons.io.FileUtils:225,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.lang.Number)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Number"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Number].longValue()"
    - "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:279,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.commons.io.FileUtils:279,1"
      Dst: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:259,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.commons.io.FileUtils:259,1"
      Dst: "[net.jsign.commons.io.FileUtils].byteCountToDisplaySize(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:296"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:300"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:295,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:296,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:297,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:301,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isFile()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:310"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:307,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].checksum(java.io.File,java.util.zip.Checksum)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.zip.Checksum"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[java.util.zip.CheckedInputStream].<init>(java.io.InputStream,java.util.zip.Checksum)"
    - "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:332,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:333,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.util.zip.CheckedInputStream].<init>(java.io.InputStream,java.util.zip.Checksum)"
    - Src: "net.jsign.commons.io.FileUtils:335,1"
      Dst: "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    - Src: "net.jsign.commons.io.FileUtils:336,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:337,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:296"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:300"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:295,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:296,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:297,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:301,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:866,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1455
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1456,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1106
    functionDepth: 1
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1107,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:1107,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1478
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[])"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[],int,int)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1483"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1487"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "net.jsign.commons.io.IOUtils:1486"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1479,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1483,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "net.jsign.commons.io.IOUtils:1484,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].checksumCRC32(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.zip.CRC32].<init>()"
    - "[net.jsign.commons.io.FileUtils].checksum(java.io.File,java.util.zip.Checksum)"
    - "[java.util.zip.Checksum].getValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:352,1"
      Dst: "[java.util.zip.CRC32].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:352,1"
      Dst: "[net.jsign.commons.io.FileUtils].checksum(java.io.File,java.util.zip.Checksum)"
    - Src: "net.jsign.commons.io.FileUtils:352,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].checksum(java.io.File,java.util.zip.Checksum)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.zip.Checksum"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[java.util.zip.CheckedInputStream].<init>(java.io.InputStream,java.util.zip.Checksum)"
    - "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:332,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:333,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:334,1"
      Dst: "[java.util.zip.CheckedInputStream].<init>(java.io.InputStream,java.util.zip.Checksum)"
    - Src: "net.jsign.commons.io.FileUtils:335,1"
      Dst: "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    - Src: "net.jsign.commons.io.FileUtils:336,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:337,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File[]"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.FileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].listFiles()"
    - "[java.io.File].listFiles(java.io.FileFilter)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2256,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles(java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$forceDeleteOnExit__64].bootstrap$()"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.FileUtils$forceDeleteOnExit__64].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File[]"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.FileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].listFiles()"
    - "[java.io.File].listFiles(java.io.FileFilter)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2256,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles(java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].contentEquals(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - "[java.io.File].length()"
    - "[java.io.File].getCanonicalFile()"
    - "[java.io.File].equals(java.lang.Object)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:396"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:399"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:398"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:396"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:399"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:398"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:399"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:400"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:399"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:399"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:402"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:401"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:403"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:407"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:406"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:407"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:411"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:419"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:420"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:402,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:412,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:415,1"
      Dst: "[java.io.File].length()"
    - Src: "net.jsign.commons.io.FileUtils:420,1"
      Dst: "[java.io.File].getCanonicalFile()"
    - Src: "net.jsign.commons.io.FileUtils:420,1"
      Dst: "[java.io.File].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:425,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:425,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isFile()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:310"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:307,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:717,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].fileContentEquals(java.nio.file.Path,java.nio.file.Path,java.nio.file.LinkOption[],java.nio.file.OpenOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    - "java.nio.file.OpenOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].normalize()"
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.nio.file.Files].size(java.nio.file.Path)"
    - "[java.nio.file.Path].equals(java.lang.Object)"
    - "[java.nio.file.Path].toRealPath(java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.RandomAccessFileMode].create(java.nio.file.Path)"
    - "[net.jsign.commons.io.RandomAccessFiles].contentEquals(java.io.RandomAccessFile,java.io.RandomAccessFile)"
    - "[java.io.RandomAccessFile].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.commons.io.IOUtils].contentEquals(java.io.InputStream,java.io.InputStream)"
    - "[java.io.InputStream].close()"
    functionUses: 0
    ICount: 95
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:737"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:740"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:739"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:737"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:740"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:739"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:740"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:741"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:740"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:740"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:743"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:742"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:746"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:749"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:748"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:749"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:754"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:753"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:754"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:758"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:758"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:762"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:761"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:762"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:766"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:765"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:766"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:771"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:774"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:771"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:774"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:771"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:782"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:781"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:782"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:781"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:782"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:781"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:782"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:778"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:779"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:738"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:737"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:738"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:738"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:737"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:743,1"
      Dst: "[java.nio.file.Path].normalize()"
    - Src: "net.jsign.commons.io.file.PathUtils:745,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:754,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:756,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.file.PathUtils:756,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:756,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils:756,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.file.PathUtils:756,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:762,1"
      Dst: "[java.nio.file.Files].size(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:766,1"
      Dst: "[java.nio.file.Path].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils:771,1"
      Dst: "[java.nio.file.Path].toRealPath(java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:771,1"
      Dst: "[net.jsign.commons.io.RandomAccessFileMode].create(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:773,1"
      Dst: "[net.jsign.commons.io.RandomAccessFiles].contentEquals(java.io.RandomAccessFile,java.io.RandomAccessFile)"
    - Src: "net.jsign.commons.io.file.PathUtils:774,1"
      Dst: "[java.io.RandomAccessFile].close()"
    - Src: "net.jsign.commons.io.file.PathUtils:782,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.commons.io.file.PathUtils:779,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:781,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEquals(java.io.InputStream,java.io.InputStream)"
    - Src: "net.jsign.commons.io.file.PathUtils:782,1"
      Dst: "[java.io.InputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 44
  - functionName: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:698"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:699,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:700,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.RandomAccessFileMode].create(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFileMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.RandomAccessFile"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].toFile()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[java.nio.file.Path].toFile()"
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.RandomAccessFileMode:81,1"
      Dst: "[net.jsign.commons.io.RandomAccessFileMode].create(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.RandomAccessFiles].contentEquals(java.io.RandomAccessFile,java.io.RandomAccessFile)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFiles"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.RandomAccessFile"
    - "java.io.RandomAccessFile"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.io.RandomAccessFiles].length(java.io.RandomAccessFile)"
    - "[java.io.RandomAccessFile].getChannel()"
    - "[net.jsign.commons.io.channels.FileChannels].contentEquals(java.nio.channels.FileChannel,java.nio.channels.FileChannel,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.RandomAccessFiles:46"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:50"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:49"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.RandomAccessFiles:52"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:55"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:54"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.RandomAccessFiles:55"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:61"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:60"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.RandomAccessFiles:55"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:61"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFiles:46,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.RandomAccessFiles:50,1"
      Dst: "[net.jsign.commons.io.RandomAccessFiles].length(java.io.RandomAccessFile)"
    - Src: "net.jsign.commons.io.RandomAccessFiles:61,1"
      Dst: "[java.io.RandomAccessFile].getChannel()"
    - Src: "net.jsign.commons.io.RandomAccessFiles:63,1"
      Dst: "[net.jsign.commons.io.channels.FileChannels].contentEquals(java.nio.channels.FileChannel,java.nio.channels.FileChannel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.commons.io.RandomAccessFiles].length(java.io.RandomAccessFile)"
    functionSourceFile: "net.jsign.commons.io.RandomAccessFiles"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.RandomAccessFile"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.RandomAccessFile].length()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.RandomAccessFiles:67"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.RandomAccessFiles:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.RandomAccessFiles:67,1"
      Dst: "[java.io.RandomAccessFile].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.channels.FileChannels].contentEquals(java.nio.channels.FileChannel,java.nio.channels.FileChannel,int)"
    functionSourceFile: "net.jsign.commons.io.channels.FileChannels"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "java.nio.channels.FileChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    - "[java.nio.ByteBuffer].allocateDirect(int)"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.channels.FileChannels:45"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:49"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:48"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:51"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:54"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:58"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:57"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:58"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:57"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:65"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:68"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:68"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:71"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:70"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.channels.FileChannels:71"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:74"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.channels.FileChannels:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.channels.FileChannels:45,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.channels.FileChannels:49,1"
      Dst: "[net.jsign.commons.io.channels.FileChannels].size(java.nio.channels.FileChannel)"
    - Src: "net.jsign.commons.io.channels.FileChannels:58,1"
      Dst: "[java.nio.ByteBuffer].allocateDirect(int)"
    - Src: "net.jsign.commons.io.channels.FileChannels:61,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer)"
    - Src: "net.jsign.commons.io.channels.FileChannels:63,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.commons.io.channels.FileChannels:66,1"
      Dst: "[java.nio.ByteBuffer].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.io.InputStream,java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - "[net.jsign.commons.io.IOUtils].byteArray()"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:902"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:905"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:904"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:906"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:905"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:910"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:909"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:920"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:921"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:929"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:924"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:923"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:922"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:928"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:927"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:926"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:925"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:926"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:925"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:930"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:933"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:932"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:931"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:934"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:937"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:936"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:935"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:934"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:935"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:934"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:939"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:917"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:910,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:912,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray()"
    - Src: "net.jsign.commons.io.IOUtils:923,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:926,1"
      Dst: "[java.io.InputStream].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 30
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1693,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:354,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].contentEqualsIgnoreEOL(java.io.File,java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[java.io.File].getCanonicalFile()"
    - "[java.io.File].equals(java.lang.Object)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.Reader,java.io.Reader)"
    - "[java.io.Reader].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:449"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:452"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:451"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:449"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:452"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:451"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:452"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:453"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:452"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:452"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:455"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:454"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:456"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:460"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:459"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:460"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:465"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:464"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:468"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:473"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:472"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:455,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:465,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:468,1"
      Dst: "[java.io.File].getCanonicalFile()"
    - Src: "net.jsign.commons.io.FileUtils:468,1"
      Dst: "[java.io.File].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:473,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:474,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:474,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:474,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:476,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.Reader,java.io.Reader)"
    - Src: "net.jsign.commons.io.FileUtils:477,1"
      Dst: "[java.io.Reader].close()"
    - Src: "net.jsign.commons.io.FileUtils:450,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:296"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:300"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:295,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:296,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:297,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:301,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:219"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:219,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.Reader,java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1056"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1059"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1058"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1059"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1060"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1059"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1059"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1062"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1061"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1062,1"
      Dst: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - Src: "net.jsign.commons.io.IOUtils:1062,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2666"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2665"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2666,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.BufferedReader"
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].lines()"
    - "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1030"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1033"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1032"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1034"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1033"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1036"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1035"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1036,1"
      Dst: "[java.io.BufferedReader].lines()"
    - Src: "net.jsign.commons.io.IOUtils:1036,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.stream.Stream"
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.BaseStream].iterator()"
    - "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1022"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1021"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1022"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1023"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1022"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1022"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1025"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1024"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1025,1"
      Dst: "[java.util.stream.BaseStream].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:1025,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:948"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:956"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:955"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:949"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:952"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:951"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:952"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:948"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:947"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:956"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:955"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:948,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:952,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:952,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.commons.io.FileUtils].convertFileCollectionToFileArray(java.util.Collection)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:489,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:527,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:556,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:657,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:718"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:727"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:720"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:727"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:722"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:710,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:711,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:712,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:716,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:718,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:719,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:721,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:727,1"
      Dst: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2768"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2772"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2771"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2767,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:2768,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2770,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2770,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File[]"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.FileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].listFiles()"
    - "[java.io.File].listFiles(java.io.FileFilter)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2256,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles(java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "java.util.List"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1350"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1352"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1353"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1352"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1353"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1356"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1355"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1361"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1364"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1363"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1347,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:1348,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1349,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1351,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:1351,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1352,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:1352,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:1353,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1354,1"
      Dst: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1356,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1362,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2802,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.File].exists()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:853"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:857"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:856"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:850,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:851,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:852,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:853,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:857,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:859,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:863,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:296"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:300"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:295,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:296,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:297,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:301,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1495"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1494"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1495,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.BasicFileAttributes].lastModifiedTime()"
    - "[java.nio.file.attribute.BasicFileAttributes].lastAccessTime()"
    - "[java.nio.file.attribute.BasicFileAttributes].creationTime()"
    - "[java.nio.file.attribute.BasicFileAttributeView].setTimes(java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime)"
    - "[java.io.File].lastModified()"
    - "[java.io.File].setLastModified(long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2819,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2823,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2823,1"
      Dst: "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2824,1"
      Dst: "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].lastModifiedTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].lastAccessTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].creationTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributeView].setTimes(java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime)"
    - Src: "net.jsign.commons.io.FileUtils:2830,1"
      Dst: "[java.io.File].lastModified()"
    - Src: "net.jsign.commons.io.FileUtils:2830,1"
      Dst: "[java.io.File].setLastModified(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:556,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:606,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:657,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:657,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:718"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:727"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:720"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:727"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:722"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:726"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:710,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:711,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:712,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:716,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:718,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:719,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:721,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:723,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:727,1"
      Dst: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectoryToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:756,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:757,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2802,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:556,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,java.io.FileFilter,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:785,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:886,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.File].exists()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:853"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:857"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:856"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:850,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:851,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:852,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:853,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:857,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:859,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:863,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:812,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.File].exists()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:853"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:857"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:856"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:850,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:851,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:852,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:853,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:857,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:859,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:863,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.File].exists()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:853"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:857"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:856"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:850,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:851,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:852,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:853,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:857,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:859,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:863,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:886,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:906"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:903"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:904"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:904"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:904,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:904,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:905,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:906,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:905,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1455
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1456,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:931,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:958,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:959,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2802,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:812,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:958,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:959,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:960,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyInputStreamToFile(java.io.InputStream,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:987"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:988"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:987"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:985"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:988"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:987"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:986,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:987,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:988,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1079"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1080"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1079"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1077"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1080"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1079"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1077,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:1078,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:1079,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:1080,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1084
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1086"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1084"
        BranchSideFuncs:
        - "copyLarge(java.io.InputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1085,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1455
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1456,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].copyDirectoryToDirectory(java.io.File,java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1021"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1020"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1021"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1024"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1023"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1018,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1019,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:1020,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1021,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1022,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectoryToDirectory(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1024,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:1024,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1024,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:1024,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:1024,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:931,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectoryToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:756,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:757,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:758,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyToDirectory(java.lang.Iterable,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Iterable"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1053"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1056"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1055"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1052,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1053,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "net.jsign.commons.io.FileUtils:1053,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.FileUtils:1053,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.FileUtils:1054,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:931,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFileToDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1079"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1080"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1079"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1077"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1080"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1079"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1077,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:1078,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:1079,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:1080,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyURLToFile(java.net.URL,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.FileUtils$openStream__65].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.file.PathUtils].copy(net.jsign.commons.io.function.IOSupplier,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1103,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1104,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.FileUtils:1105,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:1105,1"
      Dst: "[net.jsign.commons.io.FileUtils$openStream__65].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.FileUtils:1105,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].copy(net.jsign.commons.io.function.IOSupplier,java.nio.file.Path,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:379,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.PathUtils].readIfSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].createDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:397"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:398"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:401"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:400"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:396,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:397,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readIfSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:401,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:402,1"
      Dst: "[java.nio.file.Files].createDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.commons.io.file.PathUtils].copy(net.jsign.commons.io.function.IOSupplier,java.nio.file.Path,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.file.Path"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    - "[java.nio.file.Files].copy(java.io.InputStream,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:280"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:277"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:278"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:278"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:278,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.file.PathUtils:279,1"
      Dst: "[java.nio.file.Files].copy(java.io.InputStream,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:280,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.file.PathUtils:279,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].copyURLToFile(java.net.URL,java.io.File,int,int)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.URL"
    - "java.io.File"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - "[net.jsign.commons.io.CloseableURLConnection].setConnectTimeout(int)"
    - "[net.jsign.commons.io.CloseableURLConnection].setReadTimeout(int)"
    - "[net.jsign.commons.io.CloseableURLConnection].getInputStream()"
    - "[net.jsign.commons.io.FileUtils].copyInputStreamToFile(java.io.InputStream,java.io.File)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[net.jsign.commons.io.CloseableURLConnection].close()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1134"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1132"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1135"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1136"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1135"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1129"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1134"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1129,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - Src: "net.jsign.commons.io.FileUtils:1130,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].setConnectTimeout(int)"
    - Src: "net.jsign.commons.io.FileUtils:1131,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].setReadTimeout(int)"
    - Src: "net.jsign.commons.io.FileUtils:1132,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].getInputStream()"
    - Src: "net.jsign.commons.io.FileUtils:1133,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyInputStreamToFile(java.io.InputStream,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1134,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:1129,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.commons.io.FileUtils:1135,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.CloseableURLConnection"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].openConnection()"
    - "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setConnectTimeout(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setConnectTimeout(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:232,1"
      Dst: "[java.net.URLConnection].setConnectTimeout(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].setReadTimeout(int)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].setReadTimeout(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:257,1"
      Dst: "[java.net.URLConnection].setReadTimeout(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].getInputStream()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getInputStream()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:177,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyInputStreamToFile(java.io.InputStream,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:987"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:988"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:987"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:985"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:988"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:987"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:986,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyToFile(java.io.InputStream,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:987,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:988,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].close()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:57,1"
      Dst: "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].current()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].current()"
    - "[java.nio.file.Path].toFile()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1159,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].current()"
    - Src: "net.jsign.commons.io.FileUtils:1159,1"
      Dst: "[java.nio.file.Path].toFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].current()"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Paths].get(java.lang.String,java.lang.String[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:413,1"
      Dst: "[java.nio.file.Paths].get(java.lang.String,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.Charset].decode(java.nio.ByteBuffer)"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1178"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1178"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1182"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1203"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1183"
      Branch Sides: []
    - Branch String: "net.jsign.commons.io.FileUtils:1189"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1194"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1189"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1200"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1199"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1178,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.io.FileUtils:1179,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.FileUtils:1180,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:1181,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.FileUtils:1183,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.io.FileUtils:1186,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.io.FileUtils:1186,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "net.jsign.commons.io.FileUtils:1187,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.commons.io.FileUtils:1195,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.FileUtils:1196,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.nio.charset.Charset].decode(java.nio.ByteBuffer)"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.nio.CharBuffer].toString()"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1198,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.commons.io.FileUtils:1202,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.io.FileUtils:1204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].delete(java.nio.file.Path)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1221,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1222,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1222,1"
      Dst: "[java.nio.file.Files].delete(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1236"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1239"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1238"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1239"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1241"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1235,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1236,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:1239,1"
      Dst: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1240,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1242,1"
      Dst: "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].delete(java.nio.file.Path)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1221,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1222,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1222,1"
      Dst: "[java.nio.file.Files].delete(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].deleteDirectoryOnExit(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].deleteOnExit()"
    - "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1253"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1253,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:1256,1"
      Dst: "[java.io.File].deleteOnExit()"
    - Src: "net.jsign.commons.io.FileUtils:1257,1"
      Dst: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1258,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$forceDeleteOnExit__64].bootstrap$()"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.FileUtils$forceDeleteOnExit__64].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:378,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - "[java.io.File].delete()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1278"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1282"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1281"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1282"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1287"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1286"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1282,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1283,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1290,1"
      Dst: "[java.io.File].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils$forceDelete__63].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:365,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].directoryContains(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].getCanonicalPath()"
    - "[net.jsign.commons.io.FilenameUtils].directoryContains(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1323"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1322"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1322"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1327"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1326"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1320,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1322,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:1327,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:1327,1"
      Dst: "[net.jsign.commons.io.FilenameUtils].directoryContains(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FilenameUtils].directoryContains(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FilenameUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FilenameUtils].isEmpty(java.lang.String)"
    - "[net.jsign.commons.io.IOCase].checkEquals(java.lang.String,java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.commons.io.FilenameUtils].toSeparator(boolean)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.io.IOCase].checkStartsWith(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FilenameUtils:283"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:284"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FilenameUtils:283"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FilenameUtils:283"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:287"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FilenameUtils:286"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FilenameUtils:287"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:291"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FilenameUtils:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FilenameUtils:291"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:291"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FilenameUtils:290"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FilenameUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FilenameUtils:283,1"
      Dst: "[net.jsign.commons.io.FilenameUtils].isEmpty(java.lang.String)"
    - Src: "net.jsign.commons.io.FilenameUtils:287,1"
      Dst: "[net.jsign.commons.io.IOCase].checkEquals(java.lang.String,java.lang.String)"
    - Src: "net.jsign.commons.io.FilenameUtils:291,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.io.FilenameUtils:291,1"
      Dst: "[net.jsign.commons.io.FilenameUtils].toSeparator(boolean)"
    - Src: "net.jsign.commons.io.FilenameUtils:292,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.FilenameUtils:292,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FilenameUtils:292,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FilenameUtils:292,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.io.FilenameUtils:292,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FilenameUtils:294,1"
      Dst: "[net.jsign.commons.io.IOCase].checkStartsWith(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[net.jsign.commons.io.FilenameUtils].isEmpty(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FilenameUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FilenameUtils:1025"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:1024"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FilenameUtils:1025"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:1024"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FilenameUtils:1025,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOCase].checkEquals(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOCase:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOCase:172,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOCase:172,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[net.jsign.commons.io.FilenameUtils].toSeparator(boolean)"
    functionSourceFile: "net.jsign.commons.io.FilenameUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FilenameUtils:1572"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FilenameUtils:1571"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOCase].checkStartsWith(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOCase:232"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:232"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:232"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOCase:232"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOCase:232,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.IOCase:232,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.io.FileFilter"
    - "java.util.List"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1350"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1352"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1353"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1352"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1352"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1346"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1353"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1356"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1355"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1361"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1364"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1363"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1347,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:1348,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1349,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1351,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:1351,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1352,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:1352,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:1353,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1354,1"
      Dst: "[net.jsign.commons.io.FileUtils].doCopyDirectory(java.io.File,java.io.File,java.io.FileFilter,java.util.List,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1356,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1362,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.commons.io.FileUtils].forceDelete(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].delete(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].get()"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getDirectoryCounter()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1392"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1392"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1395"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1382,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1387,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1386,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].delete(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1390,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:1390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:1390,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:1390,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.commons.io.FileUtils:1392,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - Src: "net.jsign.commons.io.FileUtils:1392,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].get()"
    - Src: "net.jsign.commons.io.FileUtils:1392,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getDirectoryCounter()"
    - Src: "net.jsign.commons.io.FileUtils:1394,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.commons.io.file.PathUtils].delete(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].deleteDirectory(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    - "[net.jsign.commons.io.file.PathUtils].deleteFile(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:477"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:476"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:477,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:477,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].deleteDirectory(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:477,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].deleteFile(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].deleteDirectory(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    - "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:518,1"
      Dst: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - Src: "net.jsign.commons.io.file.PathUtils:518,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    - Src: "net.jsign.commons.io.file.PathUtils:518,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:518,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:432,1"
      Dst: "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$LongPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].longCounter()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$LongPathCounters:298,1"
      Dst: "[net.jsign.commons.io.file.Counters].longCounter()"
    - Src: "net.jsign.commons.io.file.Counters$LongPathCounters:298,1"
      Dst: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].longCounter()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.file.Counters$Counter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$LongCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:423,1"
      Dst: "[net.jsign.commons.io.file.Counters$LongCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$LongCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$LongCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.Counters$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$LongCounter].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$LongCounter:231,1"
      Dst: "[net.jsign.commons.io.file.Counters$LongCounter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$LongCounter].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$LongCounter"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.file.Counters$LongCounter:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - "[java.lang.Object].clone()"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:84"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:82"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:89"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:85"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:83,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:84,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:85,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:87,1"
      Dst: "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:89,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.filefilter.IOFileFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SymbolicLinkFileFilter].<init>(java.nio.file.FileVisitResult,java.nio.file.FileVisitResult)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:48,1"
      Dst: "[net.jsign.commons.io.filefilter.SymbolicLinkFileFilter].<init>(java.nio.file.FileVisitResult,java.nio.file.FileVisitResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SymbolicLinkFileFilter].<init>(java.nio.file.FileVisitResult,java.nio.file.FileVisitResult)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SymbolicLinkFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.FileVisitResult"
    - "java.nio.file.FileVisitResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>(java.nio.file.FileVisitResult,java.nio.file.FileVisitResult)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SymbolicLinkFileFilter:104,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>(java.nio.file.FileVisitResult,java.nio.file.FileVisitResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.filefilter.IOFileFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.file.PathFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.SimplePathVisitor].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:90,1"
      Dst: "[net.jsign.commons.io.file.SimplePathVisitor].<init>()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:91,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    functionSourceFile: "net.jsign.commons.io.file.StandardDeleteOption"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.DeleteOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.file.StandardDeleteOption$lambda_overrideReadOnly_0__152].bootstrap$()"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.StandardDeleteOption:45"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.StandardDeleteOption:48"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.StandardDeleteOption:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.StandardDeleteOption:45,1"
      Dst: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.StandardDeleteOption:48,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.StandardDeleteOption:48,1"
      Dst: "[net.jsign.commons.io.file.StandardDeleteOption$lambda_overrideReadOnly_0__152].bootstrap$()"
    - Src: "net.jsign.commons.io.file.StandardDeleteOption:48,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1784
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1784"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.LinkOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1305,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitor"
    argCount: 2
    argTypes:
    - "java.nio.file.FileVisitor"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1730,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].deleteFile(java.nio.file.Path,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Path].toString()"
    - "[java.nio.file.NoSuchFileException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].size(java.nio.file.Path)"
    - "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    - "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.PathUtils].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - "[net.jsign.commons.io.file.PathUtils].readPosixFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.PosixFileAttributes].permissions()"
    - "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:564"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:569"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:569"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:567"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:566"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:571"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:578"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:577"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:582"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:587"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:586"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:588"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:587"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:586"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:588"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:587"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:586"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:589"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:594"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:593"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:594"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:598"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:597"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:594"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:597"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:564,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:565,1"
      Dst: "[java.nio.file.Path].toString()"
    - Src: "net.jsign.commons.io.file.PathUtils:565,1"
      Dst: "[java.nio.file.NoSuchFileException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:567,1"
      Dst: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - Src: "net.jsign.commons.io.file.PathUtils:568,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:569,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:569,1"
      Dst: "[java.nio.file.Files].size(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:571,1"
      Dst: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:572,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:572,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - Src: "net.jsign.commons.io.file.PathUtils:573,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:573,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    - Src: "net.jsign.commons.io.file.PathUtils:579,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:582,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:583,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readPosixFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:584,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:595,1"
      Dst: "[java.nio.file.attribute.PosixFileAttributes].permissions()"
    - Src: "net.jsign.commons.io.file.PathUtils:595,1"
      Dst: "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 24
  - functionName: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:698"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:699,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:700,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Path].getParent()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1013"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1012"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1013,1"
      Dst: "[java.nio.file.Path].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.DeleteOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.file.PathUtils$lambda_overrideReadOnly_2__182].bootstrap$()"
    - "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1319"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1322"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1321"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1322,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1322,1"
      Dst: "[net.jsign.commons.io.file.PathUtils$lambda_overrideReadOnly_2__182].bootstrap$()"
    - Src: "net.jsign.commons.io.file.PathUtils:1322,1"
      Dst: "[java.util.stream.Stream].anyMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].readPosixFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.attribute.PosixFileAttributes"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1420,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.BasicFileAttributes"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.Class"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1338"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1338"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1337"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1338,1"
      Dst: "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].setDosReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.PathUtils].isPosix(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.file.PathUtils].setPosixReadOnlyFile(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].setPosixDeletePermissions(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1594"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1599"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1598"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1601"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1605"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1604"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1605"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1612"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1594,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setDosReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1600,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1601,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isPosix(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1608,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setPosixReadOnlyFile(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1609,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setPosixDeletePermissions(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.commons.io.file.PathUtils].setDosReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getDosFileAttributeView(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.DosFileAttributeView].setReadOnly(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1474"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1478"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1477"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1473,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getDosFileAttributeView(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1475,1"
      Dst: "[java.nio.file.attribute.DosFileAttributeView].setReadOnly(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].getDosFileAttributeView(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.DosFileAttributeView"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:886,1"
      Dst: "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isPosix(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].readPosixFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1241"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1240"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1241"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1240"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1241,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1241,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].readPosixFileAttributes(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.file.PathUtils].setPosixReadOnlyFile(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.Set].removeAll(java.util.Collection)"
    - "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1566"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1571"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1553,1"
      Dst: "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1555,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1568,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1569,1"
      Dst: "[java.util.Set].removeAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1575,1"
      Dst: "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].setPosixDeletePermissions(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[net.jsign.commons.io.file.PathUtils].setPosixPermissions(java.nio.file.Path,boolean,java.util.List,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1509,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1509,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setPosixPermissions(java.nio.file.Path,boolean,java.util.List,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].setPosixPermissions(java.nio.file.Path,boolean,java.util.List,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.util.List"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.Set].removeAll(java.util.Collection)"
    - "[java.util.Set].equals(java.lang.Object)"
    - "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1535"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1548"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1547"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1538"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1541"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1540"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1543"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1546"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1545"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1536,1"
      Dst: "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1537,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1539,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1541,1"
      Dst: "[java.util.Set].removeAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.file.PathUtils:1543,1"
      Dst: "[java.util.Set].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils:1544,1"
      Dst: "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.FileUtils].forceDeleteOnExit(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].deleteDirectoryOnExit(java.io.File)"
    - "[java.io.File].deleteOnExit()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1408"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1411"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1410"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1407,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1408,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1409,1"
      Dst: "[net.jsign.commons.io.FileUtils].deleteDirectoryOnExit(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1411,1"
      Dst: "[java.io.File].deleteOnExit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].deleteDirectoryOnExit(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.io.File].deleteOnExit()"
    - "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1253"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1253,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:1256,1"
      Dst: "[java.io.File].deleteOnExit()"
    - Src: "net.jsign.commons.io.FileUtils:1257,1"
      Dst: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1258,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectoryOnExit(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].forceMkdir(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1429,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].forceMkdirParent(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].forceMkdir(java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1447,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1447,1"
      Dst: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1447,1"
      Dst: "[net.jsign.commons.io.FileUtils].forceMkdir(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1495"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1494"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1495,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].forceMkdir(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1429,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getFile(java.io.File,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1462"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1464"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1459,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1463,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].getFile(java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1478"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1485"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1484"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1479"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1482"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1481"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1476,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1480,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1482,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1495"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1494"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1495,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].getTempDirectory()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].getTempDirectoryPath()"
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1505,1"
      Dst: "[net.jsign.commons.io.FileUtils].getTempDirectoryPath()"
    - Src: "net.jsign.commons.io.FileUtils:1505,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getTempDirectoryPath()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1520,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getTempDirectoryPath()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1520,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getUserDirectory()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].getUserDirectoryPath()"
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1530,1"
      Dst: "[net.jsign.commons.io.FileUtils].getUserDirectoryPath()"
    - Src: "net.jsign.commons.io.FileUtils:1530,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getUserDirectoryPath()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1540,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].getUserDirectoryPath()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1540,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isDirectory(java.io.File,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1557"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1557"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1558,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1558,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].isEmptyDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1572,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1572,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].newDirectoryStream(java.nio.file.Path)"
    - "[java.nio.file.DirectoryStream].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Closeable].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1077"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1076"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1078"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1076"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1077"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1076"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1076,1"
      Dst: "[java.nio.file.Files].newDirectoryStream(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1077,1"
      Dst: "[java.nio.file.DirectoryStream].iterator()"
    - Src: "net.jsign.commons.io.file.PathUtils:1077,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.file.PathUtils:1078,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.file.PathUtils:1078,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1594,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.LocalTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1616,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1618,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1618,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    - "java.time.ZoneId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1675,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1677,1"
      Dst: "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - Src: "net.jsign.commons.io.FileUtils:1677,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoZonedDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_0__66].bootstrap$(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1692,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_0__66].bootstrap$(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.LocalTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1616,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1618,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1618,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDate,java.time.OffsetTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.OffsetTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.OffsetTime].toLocalTime()"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1635,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1637,1"
      Dst: "[java.time.OffsetTime].toLocalTime()"
    - Src: "net.jsign.commons.io.FileUtils:1637,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1637,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1658,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    - "java.time.ZoneId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1675,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1677,1"
      Dst: "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - Src: "net.jsign.commons.io.FileUtils:1677,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoZonedDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_0__66].bootstrap$(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1692,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_0__66].bootstrap$(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.util.Date)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.Date].getTime()"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1708,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1709,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "net.jsign.commons.io.FileUtils:1709,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_3__69].bootstrap$(java.io.File,long)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1767,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_3__69].bootstrap$(java.io.File,long)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_1__67].bootstrap$(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_1__67].bootstrap$(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.nio.file.attribute.FileTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.file.attribute.FileTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1737,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1738,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1738,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1122"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1122,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1125,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1309,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1309,1"
      Dst: "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.FileTime].compareTo(java.nio.file.attribute.FileTime)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:264,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:264,1"
      Dst: "[java.nio.file.attribute.FileTime].compareTo(java.nio.file.attribute.FileTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_2__68].bootstrap$(java.io.File,java.time.Instant)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1752,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_2__68].bootstrap$(java.io.File,java.time.Instant)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_3__69].bootstrap$(java.io.File,long)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1767,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_3__69].bootstrap$(java.io.File,long)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.OffsetDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.OffsetDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.OffsetDateTime].toInstant()"
    - "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.Instant)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1782,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1783,1"
      Dst: "[java.time.OffsetDateTime].toInstant()"
    - Src: "net.jsign.commons.io.FileUtils:1783,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.Instant)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileNewer(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_2__68].bootstrap$(java.io.File,java.time.Instant)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1752,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileNewer_2__68].bootstrap$(java.io.File,java.time.Instant)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1807,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.LocalTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1830,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1832,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1832,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    - "java.time.ZoneId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1890,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1892,1"
      Dst: "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - Src: "net.jsign.commons.io.FileUtils:1892,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoZonedDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1907,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1908,1"
      Dst: "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - Src: "net.jsign.commons.io.FileUtils:1908,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1964,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate,java.time.LocalTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.LocalTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1830,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1832,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1832,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDate,java.time.OffsetTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDate"
    - "java.time.OffsetTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.OffsetTime].toLocalTime()"
    - "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1851,1"
      Dst: "[java.time.OffsetTime].toLocalTime()"
    - Src: "net.jsign.commons.io.FileUtils:1851,1"
      Dst: "[java.time.chrono.ChronoLocalDate].atTime(java.time.LocalTime)"
    - Src: "net.jsign.commons.io.FileUtils:1851,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.ZoneId].systemDefault()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[java.time.ZoneId].systemDefault()"
    - Src: "net.jsign.commons.io.FileUtils:1873,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoLocalDateTime,java.time.ZoneId)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoLocalDateTime"
    - "java.time.ZoneId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1890,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1892,1"
      Dst: "[java.time.chrono.ChronoLocalDateTime].atZone(java.time.ZoneId)"
    - Src: "net.jsign.commons.io.FileUtils:1892,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoZonedDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1907,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1908,1"
      Dst: "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - Src: "net.jsign.commons.io.FileUtils:1908,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.util.Date)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.Date].getTime()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1921,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1922,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "net.jsign.commons.io.FileUtils:1922,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_6__72].bootstrap$(java.io.File,long)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1979,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_6__72].bootstrap$(java.io.File,long)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_4__70].bootstrap$(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_4__70].bootstrap$(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.nio.file.attribute.FileTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.file.attribute.FileTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1950,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1951,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1951,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1186"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1183,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1186,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1309,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1309,1"
      Dst: "[java.nio.file.Files].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.FileTime].compareTo(java.nio.file.attribute.FileTime)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:264,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:264,1"
      Dst: "[java.nio.file.attribute.FileTime].compareTo(java.nio.file.attribute.FileTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1964,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_6__72].bootstrap$(java.io.File,long)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1979,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_6__72].bootstrap$(java.io.File,long)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.OffsetDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.OffsetDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.OffsetDateTime].toInstant()"
    - "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1993,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1994,1"
      Dst: "[java.time.OffsetDateTime].toInstant()"
    - Src: "net.jsign.commons.io.FileUtils:1994,1"
      Dst: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isFileOlder(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1964,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_isFileOlder_5__71].bootstrap$(java.io.File,java.time.Instant)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].isRegularFile(java.io.File,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isRegularFile(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2012"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2011"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2012"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2011"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2012,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2012,1"
      Dst: "[java.nio.file.Files].isRegularFile(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2027"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2026"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2027,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].iterateFiles(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2051,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2051,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_listFiles_9__77].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.FileUtils$toFile__78].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2295,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listFiles_9__77].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2296,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__78].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOFunction"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:117,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:119,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    functionSourceFile: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.AccumulatorPathVisitor:188,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].iterateFiles(java.io.File,java.lang.String[],boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_iterateFiles_7__73].bootstrap$(java.io.File,boolean,java.lang.String[])"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[net.jsign.commons.io.StreamIterator].iterator(java.util.stream.Stream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2069,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_iterateFiles_7__73].bootstrap$(java.io.File,boolean,java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2069,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:2069,1"
      Dst: "[net.jsign.commons.io.StreamIterator].iterator(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.StreamIterator].iterator(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.StreamIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.StreamIterator"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.StreamIterator].<init>(java.util.stream.Stream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StreamIterator:51,1"
      Dst: "[net.jsign.commons.io.StreamIterator].<init>(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.StreamIterator].<init>(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.StreamIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.stream.BaseStream].iterator()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.StreamIterator:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.StreamIterator:70,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.StreamIterator:71,1"
      Dst: "[java.util.stream.BaseStream].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].iterateFilesAndDirs(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].listFilesAndDirs(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2096,1"
      Dst: "[net.jsign.commons.io.FileUtils].listFilesAndDirs(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2096,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFilesAndDirs(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_listFilesAndDirs_11__80].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.FileUtils$toFile__81].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2336,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listFilesAndDirs_11__80].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2336,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2338,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - Src: "net.jsign.commons.io.FileUtils:2339,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - Src: "net.jsign.commons.io.FileUtils:2339,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__81].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOFunction"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:117,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:119,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    functionSourceFile: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.AccumulatorPathVisitor:188,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    functionSourceFile: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.AccumulatorPathVisitor:179,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lastModified(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].lastModifiedFileTime(java.io.File)"
    - "[java.nio.file.attribute.FileTime].toMillis()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2120,1"
      Dst: "[net.jsign.commons.io.FileUtils].lastModifiedFileTime(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2120,1"
      Dst: "[java.nio.file.attribute.FileTime].toMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lastModifiedFileTime(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lastModifiedFileTime(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2141,1"
      Dst: "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lastModifiedUnchecked(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lastModified__74].bootstrap$()"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2165,1"
      Dst: "[net.jsign.commons.io.FileUtils$lastModified__74].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2165,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2165,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOFunction"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:117,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:119,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].lineIterator(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].lineIterator(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2181,1"
      Dst: "[net.jsign.commons.io.FileUtils].lineIterator(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lineIterator(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.FileUtils$addSuppressed__75].bootstrap$(java.lang.Exception)"
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2224,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2224,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2225,1"
      Dst: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[net.jsign.commons.io.FileUtils$addSuppressed__75].bootstrap$(java.lang.Exception)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1856,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1856,1"
      Dst: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.LineIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.LineIterator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.LineIterator:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.LineIterator:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.LineIterator:84,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.LineIterator:85,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.LineIterator:89,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 578
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Closeable"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.LineIterator$addSuppressed__9].accept(java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].accept(java.lang.Object)"
    - "[java.io.Closeable].close()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:579"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:583"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:588"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:581,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.IOUtils:584,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].lineIterator(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.FileUtils$addSuppressed__75].bootstrap$(java.lang.Exception)"
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2224,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2224,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2225,1"
      Dst: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[net.jsign.commons.io.FileUtils$addSuppressed__75].bootstrap$(java.lang.Exception)"
    - Src: "net.jsign.commons.io.FileUtils:2227,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2234"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2236"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2234"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2233"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2235,1"
      Dst: "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2236,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - Src: "net.jsign.commons.io.FileUtils:2239,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2240,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.filefilter.FileEqualsFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.FileEqualsFileFilter:43,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.FileEqualsFileFilter:44,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.FileEqualsFileFilter:45,1"
      Dst: "[java.io.File].toPath()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    functionSourceFile: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.function.IOBiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.AccumulatorPathVisitor:151,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - Src: "net.jsign.commons.io.file.AccumulatorPathVisitor:106,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.file.PathFilter"
    - "net.jsign.commons.io.function.IOBiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.SimplePathVisitor].<init>(net.jsign.commons.io.function.IOBiFunction)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:107,1"
      Dst: "[net.jsign.commons.io.file.SimplePathVisitor].<init>(net.jsign.commons.io.function.IOBiFunction)"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:108,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3032"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.io.FileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File[]"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.FileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].listFiles()"
    - "[java.io.File].listFiles(java.io.FileFilter)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2257"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2261"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2256,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "net.jsign.commons.io.FileUtils:2257,1"
      Dst: "[java.io.File].listFiles(java.io.FileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2260,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_listFiles_9__77].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.FileUtils$toFile__78].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2295,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listFiles_9__77].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2296,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__78].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:2297,1"
      Dst: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFiles(java.io.File,java.lang.String[],boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_listFiles_10__79].bootstrap$(java.io.File,boolean,java.lang.String[])"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    - "[java.util.stream.BaseStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2313"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2311"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2311"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2310"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2311,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listFiles_10__79].bootstrap$(java.io.File,boolean,java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2311,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:2312,1"
      Dst: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    - Src: "net.jsign.commons.io.FileUtils:2313,1"
      Dst: "[java.util.stream.BaseStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:2312,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listFilesAndDirs(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_listFilesAndDirs_11__80].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.FileUtils$toFile__81].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2336,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listFilesAndDirs_11__80].bootstrap$(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2336,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2338,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getFileList()"
    - Src: "net.jsign.commons.io.FileUtils:2339,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].getDirList()"
    - Src: "net.jsign.commons.io.FileUtils:2339,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__81].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:2340,1"
      Dst: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - "[java.io.File].renameTo(java.io.File)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2382"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2392"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2379,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2380,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2381,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2382,1"
      Dst: "[java.io.File].renameTo(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2384,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2384,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2386,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2387,1"
      Dst: "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2388,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2753"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2756"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2755"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2753,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileExistsException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileExistsException:55,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:527,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1236"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1239"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1238"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1239"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1242"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1241"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1235,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1236,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:1239,1"
      Dst: "[net.jsign.commons.io.FileUtils].isSymlink(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1240,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1242,1"
      Dst: "[net.jsign.commons.io.FileUtils].delete(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].moveDirectoryToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2424"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2423"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2416"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2419"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2418"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2419"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2422"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2421"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2414,1"
      Dst: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2415,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2416,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2420,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2420,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2422,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3096"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3099"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3098"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3094,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3096,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - "[java.io.File].renameTo(java.io.File)"
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2382"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2385"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2388"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2392"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2379,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2380,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2381,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2382,1"
      Dst: "[java.io.File].renameTo(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2383,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2384,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2384,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2386,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyDirectory(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2387,1"
      Dst: "[net.jsign.commons.io.FileUtils].deleteDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2388,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2446,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - "[java.io.File].renameTo(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - "[java.io.File].delete()"
    - "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2473"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2478"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2477"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2466,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2467,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2468,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2469,1"
      Dst: "[java.io.File].renameTo(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2472,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2473,1"
      Dst: "[java.io.File].delete()"
    - Src: "net.jsign.commons.io.FileUtils:2474,1"
      Dst: "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isFile()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:296"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:300"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:304"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:295,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:296,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:297,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:300,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:301,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2753"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2756"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2755"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2753,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.File].exists()"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:853"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:857"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:856"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:862"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:865"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:864"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:849,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:850,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:851,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:852,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:853,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:857,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:859,1"
      Dst: "[java.nio.file.Files].copy(java.nio.file.Path,java.nio.file.Path,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:862,1"
      Dst: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:863,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - "[java.io.File].delete()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1278"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1282"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1281"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1282"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1287"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1286"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1282,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:1283,1"
      Dst: "[net.jsign.commons.io.FileUtils].cleanDirectory(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1290,1"
      Dst: "[java.io.File].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.nio.file.CopyOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - "[java.io.File].renameTo(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - "[java.io.File].delete()"
    - "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2473"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2478"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2477"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2466,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2467,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkFileExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2468,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2469,1"
      Dst: "[java.io.File].renameTo(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2472,1"
      Dst: "[net.jsign.commons.io.FileUtils].copyFile(java.io.File,java.io.File,boolean,java.nio.file.CopyOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2473,1"
      Dst: "[java.io.File].delete()"
    - Src: "net.jsign.commons.io.FileUtils:2474,1"
      Dst: "[net.jsign.commons.io.FileUtils].deleteQuietly(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2475,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].moveFileToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2502"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2505"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2504"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2502"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2505"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2504"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2501,1"
      Dst: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2502,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2503,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2505,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3096"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3099"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3098"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3094,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3096,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2358"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2361"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "net.jsign.commons.io.FileUtils:2358,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2359,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2446,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File,java.nio.file.CopyOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].moveToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - "[java.io.File].isDirectory()"
    - "[net.jsign.commons.io.FileUtils].moveDirectoryToDirectory(java.io.File,java.io.File,boolean)"
    - "[net.jsign.commons.io.FileUtils].moveFileToDirectory(java.io.File,java.io.File,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2531"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2534"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2533"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2530,1"
      Dst: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2531,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2532,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveDirectoryToDirectory(java.io.File,java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2534,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveFileToDirectory(java.io.File,java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3096"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3099"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3098"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3094,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3096,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].moveDirectoryToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2424"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2423"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2416"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2419"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2418"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2419"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2422"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2421"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2414,1"
      Dst: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2415,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2416,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2417,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2420,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2420,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2422,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2424,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveDirectory(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].moveFileToDirectory(java.io.File,java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.File].getName()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2502"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2505"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2504"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2502"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2505"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2504"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2501,1"
      Dst: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2502,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2503,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2505,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2506,1"
      Dst: "[net.jsign.commons.io.FileUtils].moveFile(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].openInputStream(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.FileInputStream"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2573,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2574,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].openOutputStream(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.FileOutputStream"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].openOutputStream(java.io.File,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2601,1"
      Dst: "[net.jsign.commons.io.FileUtils].openOutputStream(java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].openOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.FileOutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.FileOutputStream].<init>(java.io.File,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2630"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2633"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2632"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2629,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2630,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2631,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2633,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2635,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isFile()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:310"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:307,1"
      Dst: "[java.io.File].isFile()"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:310,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].getParentFile(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:1149,1"
      Dst: "[net.jsign.commons.io.FileUtils].mkdirs(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].openOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.FileOutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - "[java.io.FileOutputStream].<init>(java.io.File,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2630"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2633"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2632"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2629,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2630,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2631,1"
      Dst: "[net.jsign.commons.io.FileUtils].checkIsFile(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2633,1"
      Dst: "[net.jsign.commons.io.FileUtils].createParentDirectories(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2635,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: 2649
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllBytes(java.nio.file.Path)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2650,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2651,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2651,1"
      Dst: "[java.nio.file.Files].readAllBytes(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2668,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:2668,1"
      Dst: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.charset.Charset"
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3218"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3222"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3223"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3221"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3219,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:3222,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3223,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:3219,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2700,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2700,1"
      Dst: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readFileToString(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_readFileToString_12__82].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readLines(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2717,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:2717,1"
      Dst: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2749,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2749,1"
      Dst: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].readLines(java.io.File,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2733,1"
      Dst: "[java.nio.file.Files].readAllLines(java.nio.file.Path,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].requireAbsent(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2753"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2756"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2755"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2753,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2754,1"
      Dst: "[net.jsign.commons.io.FileExistsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].requireCanonicalPathsNotEquals(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getCanonicalPath()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2768"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2772"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2771"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2767,1"
      Dst: "[java.io.File].getCanonicalPath()"
    - Src: "net.jsign.commons.io.FileUtils:2768,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2770,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2770,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryIfExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].isDirectory()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2803"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2806"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2805"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2802,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2803,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2804,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].setTimes(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - "[java.nio.file.attribute.BasicFileAttributes].lastModifiedTime()"
    - "[java.nio.file.attribute.BasicFileAttributes].lastAccessTime()"
    - "[java.nio.file.attribute.BasicFileAttributes].creationTime()"
    - "[java.nio.file.attribute.BasicFileAttributeView].setTimes(java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime)"
    - "[java.io.File].lastModified()"
    - "[java.io.File].setLastModified(long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2819,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2823,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2823,1"
      Dst: "[java.nio.file.Files].readAttributes(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2824,1"
      Dst: "[java.nio.file.Files].getFileAttributeView(java.nio.file.Path,java.lang.Class,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].lastModifiedTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].lastAccessTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].creationTime()"
    - Src: "net.jsign.commons.io.FileUtils:2826,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributeView].setTimes(java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime,java.nio.file.attribute.FileTime)"
    - Src: "net.jsign.commons.io.FileUtils:2830,1"
      Dst: "[java.io.File].lastModified()"
    - Src: "net.jsign.commons.io.FileUtils:2830,1"
      Dst: "[java.io.File].setLastModified(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].sizeOf(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_sizeOf_13__83].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_sizeOf_13__83].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].sizeOfAsBigInteger(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils$lambda_sizeOfAsBigInteger_14__84].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2883,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_sizeOfAsBigInteger_14__84].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2883,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].sizeOfDirectory(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    - "[net.jsign.commons.io.FileUtils$lambda_sizeOfDirectory_15__85].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2903,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2905,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_sizeOfDirectory_15__85].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].sizeOfDirectoryAsBigInteger(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    - "[net.jsign.commons.io.FileUtils$lambda_sizeOfDirectoryAsBigInteger_16__86].bootstrap$(java.io.File)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2922,1"
      Dst: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2924,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    - Src: "net.jsign.commons.io.FileUtils:2926,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_sizeOfDirectoryAsBigInteger_16__86].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2926,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].requireDirectoryExists(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2791"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2790"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2786"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2789"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2788"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2784,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2785,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.commons.io.FileUtils:2786,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:2787,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2789,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2946"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2948"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2947"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_17__88].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_18__89].bootstrap$()"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_17__88].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_18__89].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:131,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[],net.jsign.commons.io.IOCase)"
    functionSourceFile: "net.jsign.commons.io.filefilter.SuffixFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "net.jsign.commons.io.IOCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    - "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:158,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:159,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:160,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.io.filefilter.SuffixFileFilter:161,1"
      Dst: "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOCase].value(net.jsign.commons.io.IOCase,net.jsign.commons.io.IOCase)"
    functionSourceFile: "net.jsign.commons.io.IOCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.IOCase"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.IOCase"
    - "net.jsign.commons.io.IOCase"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOCase:103"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOCase:102"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3032"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.stream.Stream"
    argCount: 5
    argTypes:
    - "java.nio.file.Path"
    - "net.jsign.commons.io.file.PathFilter"
    - "int"
    - "boolean"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].walk(java.nio.file.Path,int,java.nio.file.FileVisitOption[])"
    - "[net.jsign.commons.io.file.PathUtils$lambda_walk_3__184].bootstrap$(net.jsign.commons.io.file.PathFilter,boolean)"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1846,1"
      Dst: "[java.nio.file.Files].walk(java.nio.file.Path,int,java.nio.file.FileVisitOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1846,1"
      Dst: "[net.jsign.commons.io.file.PathUtils$lambda_walk_3__184].bootstrap$(net.jsign.commons.io.file.PathFilter,boolean)"
    - Src: "net.jsign.commons.io.file.PathUtils:1847,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toFile(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].getProtocol()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.net.URL].getFile()"
    - "[java.lang.String].replace(char,char)"
    - "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2968"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2969"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2968"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2968"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2971"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2970"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2968,1"
      Dst: "[java.net.URL].getProtocol()"
    - Src: "net.jsign.commons.io.FileUtils:2968,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2971,1"
      Dst: "[java.net.URL].getFile()"
    - Src: "net.jsign.commons.io.FileUtils:2971,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.jsign.commons.io.FileUtils:2972,1"
      Dst: "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2972,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.nio.ByteBuffer].put(byte)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.charset.Charset].decode(java.nio.ByteBuffer)"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:1178"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1178"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1182"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1204"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1203"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1183"
      Branch Sides: []
    - Branch String: "net.jsign.commons.io.FileUtils:1189"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1194"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1189"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:1195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:1200"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:1199"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1178,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.io.FileUtils:1179,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.FileUtils:1180,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:1181,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.FileUtils:1183,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.io.FileUtils:1186,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.io.FileUtils:1186,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "net.jsign.commons.io.FileUtils:1187,1"
      Dst: "[java.nio.ByteBuffer].put(byte)"
    - Src: "net.jsign.commons.io.FileUtils:1195,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "net.jsign.commons.io.FileUtils:1196,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.nio.charset.Charset].decode(java.nio.ByteBuffer)"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.nio.CharBuffer].toString()"
    - Src: "net.jsign.commons.io.FileUtils:1197,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:1198,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "net.jsign.commons.io.FileUtils:1202,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.io.FileUtils:1204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[net.jsign.commons.io.FileUtils].toFiles(java.net.URL[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.File[]"
    argCount: 1
    argTypes:
    - "java.net.URL[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - "[java.net.URL].getProtocol()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].toFile(java.net.URL)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2997"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3000"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2999"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3001"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3010"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3009"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3003"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3000"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2999"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3004"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3007"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3006"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2997,1"
      Dst: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:3004,1"
      Dst: "[java.net.URL].getProtocol()"
    - Src: "net.jsign.commons.io.FileUtils:3004,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3005,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3005,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3005,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:3005,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:3005,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3007,1"
      Dst: "[net.jsign.commons.io.FileUtils].toFile(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1784
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1784"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].toFile(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].getProtocol()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.net.URL].getFile()"
    - "[java.lang.String].replace(char,char)"
    - "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2968"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2969"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2968"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2968"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2971"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2970"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2968,1"
      Dst: "[java.net.URL].getProtocol()"
    - Src: "net.jsign.commons.io.FileUtils:2968,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2971,1"
      Dst: "[java.net.URL].getFile()"
    - Src: "net.jsign.commons.io.FileUtils:2971,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "net.jsign.commons.io.FileUtils:2972,1"
      Dst: "[net.jsign.commons.io.FileUtils].decodeUrl(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2972,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].toList(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.FileUtils:3023,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3032"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_17__88].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_18__89].bootstrap$()"
    - "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_17__88].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_toSuffixes_18__89].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.util.stream.Stream].toArray(java.util.function.IntFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].touch(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].touch(java.nio.file.Path)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3057,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3057,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:3057,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].touch(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].touch(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.Path"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - "[java.nio.file.Files].createFile(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - "[net.jsign.commons.io.file.attribute.FileTimes].setLastModifiedTime(java.nio.file.Path)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1706"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1710"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1709"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1705,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1706,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1707,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1708,1"
      Dst: "[java.nio.file.Files].createFile(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1710,1"
      Dst: "[net.jsign.commons.io.file.attribute.FileTimes].setLastModifiedTime(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.attribute.FileAttribute[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.Path"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileAttribute[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:379,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].createParentDirectories(java.nio.file.Path,java.nio.file.LinkOption,java.nio.file.attribute.FileAttribute[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.attribute.FileTimes].setLastModifiedTime(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.attribute.FileTimes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.attribute.FileTimes].now()"
    - "[java.nio.file.Files].setLastModifiedTime(java.nio.file.Path,java.nio.file.attribute.FileTime)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.attribute.FileTimes:210,1"
      Dst: "[net.jsign.commons.io.file.attribute.FileTimes].now()"
    - Src: "net.jsign.commons.io.file.attribute.FileTimes:210,1"
      Dst: "[java.nio.file.Files].setLastModifiedTime(java.nio.file.Path,java.nio.file.attribute.FileTime)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.attribute.FileTimes].now()"
    functionSourceFile: "net.jsign.commons.io.file.attribute.FileTimes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.Instant].now()"
    - "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.attribute.FileTimes:140,1"
      Dst: "[java.time.Instant].now()"
    - Src: "net.jsign.commons.io.file.attribute.FileTimes:140,1"
      Dst: "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].toURLs(java.io.File[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL[]"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toURI()"
    - "[java.net.URI].toURL()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3074"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3076"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3072,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3075,1"
      Dst: "[java.io.File].toURI()"
    - Src: "net.jsign.commons.io.FileUtils:3075,1"
      Dst: "[java.net.URI].toURL()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].validateMoveParameters(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3096"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3099"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3098"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3094,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3096,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileUtils:3097,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].waitFor(java.io.File,int)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.time.Duration].ofSeconds(long)"
    - "[net.jsign.commons.io.file.PathUtils].waitFor(java.nio.file.Path,java.time.Duration,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3114,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3115,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:3115,1"
      Dst: "[java.time.Duration].ofSeconds(long)"
    - Src: "net.jsign.commons.io.FileUtils:3115,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].waitFor(java.nio.file.Path,java.time.Duration,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].waitFor(java.nio.file.Path,java.time.Duration,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.time.Duration"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.Instant].now()"
    - "[java.time.Instant].plus(java.time.temporal.TemporalAmount)"
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.time.Instant].isAfter(java.time.Instant)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.time.Instant].toEpochMilli()"
    - "[java.time.Instant].minusMillis(long)"
    - "[java.lang.Math].min(long,long)"
    - "[java.time.Duration].ofMillis(long)"
    - "[net.jsign.commons.io.ThreadUtils].sleep(java.time.Duration)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1806"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1820"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1808"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1812"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1811"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1809"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1808"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1824"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1823"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1823"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1822"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1801,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1802,1"
      Dst: "[java.time.Instant].now()"
    - Src: "net.jsign.commons.io.file.PathUtils:1802,1"
      Dst: "[java.time.Instant].plus(java.time.temporal.TemporalAmount)"
    - Src: "net.jsign.commons.io.file.PathUtils:1806,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1808,1"
      Dst: "[java.time.Instant].isAfter(java.time.Instant)"
    - Src: "net.jsign.commons.io.file.PathUtils:1821,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.commons.io.file.PathUtils:1821,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "net.jsign.commons.io.file.PathUtils:1812,1"
      Dst: "[java.time.Instant].toEpochMilli()"
    - Src: "net.jsign.commons.io.file.PathUtils:1812,1"
      Dst: "[java.time.Instant].minusMillis(long)"
    - Src: "net.jsign.commons.io.file.PathUtils:1812,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.file.PathUtils:1812,1"
      Dst: "[java.time.Duration].ofMillis(long)"
    - Src: "net.jsign.commons.io.file.PathUtils:1812,1"
      Dst: "[net.jsign.commons.io.ThreadUtils].sleep(java.time.Duration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:698"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:699,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:700,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.ThreadUtils].sleep(java.time.Duration)"
    functionSourceFile: "net.jsign.commons.io.ThreadUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.time.Duration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.Instant].now()"
    - "[java.time.Instant].plus(java.time.temporal.TemporalAmount)"
    - "[java.time.Duration].toMillis()"
    - "[net.jsign.commons.io.ThreadUtils].getNanosOfMilli(java.time.Duration)"
    - "[java.lang.Thread].sleep(long,int)"
    - "[java.time.Duration].between(java.time.temporal.Temporal,java.time.temporal.Temporal)"
    - "[java.time.Duration].isNegative()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.ThreadUtils:51"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.ThreadUtils:49"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.ThreadUtils:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.ThreadUtils:46,1"
      Dst: "[java.time.Instant].now()"
    - Src: "net.jsign.commons.io.ThreadUtils:46,1"
      Dst: "[java.time.Instant].plus(java.time.temporal.TemporalAmount)"
    - Src: "net.jsign.commons.io.ThreadUtils:49,1"
      Dst: "[java.time.Duration].toMillis()"
    - Src: "net.jsign.commons.io.ThreadUtils:49,1"
      Dst: "[net.jsign.commons.io.ThreadUtils].getNanosOfMilli(java.time.Duration)"
    - Src: "net.jsign.commons.io.ThreadUtils:49,1"
      Dst: "[java.lang.Thread].sleep(long,int)"
    - Src: "net.jsign.commons.io.ThreadUtils:50,1"
      Dst: "[java.time.Duration].between(java.time.temporal.Temporal,java.time.temporal.Temporal)"
    - Src: "net.jsign.commons.io.ThreadUtils:51,1"
      Dst: "[java.time.Duration].isNegative()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.ThreadUtils].getNanosOfMilli(java.time.Duration)"
    functionSourceFile: "net.jsign.commons.io.ThreadUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.time.Duration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.time.Duration].getNano()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.ThreadUtils:30,1"
      Dst: "[java.time.Duration].getNano()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3129,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:3129,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3145,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:3145,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3158,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3187,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3203,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3203,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3173,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.CharSequence"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3203,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3203,1"
      Dst: "[net.jsign.commons.io.FileUtils].write(java.io.File,java.lang.CharSequence,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3218,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3232,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3248,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3268"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3266"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3266,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3267,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.commons.io.FileUtils:3268,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3269,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[],int,int,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3268"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3266"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3268"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3266,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3267,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.commons.io.FileUtils:3268,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3269,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.util.Collection)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3282,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2550,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].newOutputStream(java.nio.file.Path,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3856,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3856,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].lineSeparator()"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3817"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3820"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3823"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3822"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3823"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3826"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3828"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3834"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3833"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3829"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3832"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3831"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3821,1"
      Dst: "[java.lang.System].lineSeparator()"
    - Src: "net.jsign.commons.io.IOUtils:3823,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3827,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3832,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.util.Collection,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3298,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.util.Collection,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.util.Collection"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3313,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3330,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3347,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3365,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3383,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeLines(java.io.File,java.lang.String,java.util.Collection,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.util.Collection"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3403,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.FileUtils:3404,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3405,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3406,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3418,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:3418,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3434,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.FileUtils:3434,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3449,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3481,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3498,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3498,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:3467"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:3465"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:3468"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:3467"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3465,1"
      Dst: "[net.jsign.commons.io.FileUtils].newOutputStream(java.io.File,boolean)"
    - Src: "net.jsign.commons.io.FileUtils:3466,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.FileUtils:3467,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.FileUtils:3468,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3498,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3498,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeStringToFile(java.io.File,java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].<init>()"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.FileUtils:3507,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$toSuffixes$18(int)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$toSuffixes$17(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileUtils:3044,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$sizeOfDirectoryAsBigInteger$16(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2926,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2926,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].countDirectoryAsBigInteger(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].getBigInteger()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].countDirectoryAsBigInteger(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].getBigInteger()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].countDirectoryAsBigInteger(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].withBigIntegerCounters()"
    - "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:363,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].withBigIntegerCounters()"
    - Src: "net.jsign.commons.io.file.PathUtils:363,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:363,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].withBigIntegerCounters()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.io.file.CountingPathVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:57,1"
      Dst: "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:57,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:414,1"
      Dst: "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].bigIntegerCounter()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters:176,1"
      Dst: "[net.jsign.commons.io.file.Counters].bigIntegerCounter()"
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters:176,1"
      Dst: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].bigIntegerCounter()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.file.Counters$Counter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:405,1"
      Dst: "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>(net.jsign.commons.io.file.Counters$1)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$BigIntegerCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.Counters$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerCounter:109,1"
      Dst: "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$BigIntegerCounter].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$BigIntegerCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerCounter:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionSourceFile: "net.jsign.commons.io.file.Counters$AbstractPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    - "net.jsign.commons.io.file.Counters$Counter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$AbstractPathCounters:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitor"
    argCount: 2
    argTypes:
    - "java.nio.file.FileVisitor"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1730,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$sizeOfDirectory$15(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:2907,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].countDirectory(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].getLong()"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].countDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].getLong()"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].countDirectory(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].withLongCounters()"
    - "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:351,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].withLongCounters()"
    - Src: "net.jsign.commons.io.file.PathUtils:351,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:351,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].withLongCounters()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.io.file.CountingPathVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:66,1"
      Dst: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:66,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:432,1"
      Dst: "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultFileFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].defaultDirFilter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:79,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].visitFileTree(java.nio.file.FileVisitor,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitor"
    argCount: 2
    argTypes:
    - "java.nio.file.FileVisitor"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1730,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].getPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$sizeOfAsBigInteger$14(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].sizeOfAsBigInteger(java.nio.file.Path)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2883,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2883,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOfAsBigInteger(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOfAsBigInteger(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    - "[java.nio.file.Files].size(java.nio.file.Path)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1651"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1649"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1650,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1651,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1651,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1651,1"
      Dst: "[java.nio.file.Files].size(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1651,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.String"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1466"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1468"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1465,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1466,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:700"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:698"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:699,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:700,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectoryAsBigInteger(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].countDirectoryAsBigInteger(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].getBigInteger()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].countDirectoryAsBigInteger(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:1681,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].getBigInteger()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$sizeOf$13(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].sizeOf(java.nio.file.Path)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOf(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:2861,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOf(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    - "[java.nio.file.Files].size(java.nio.file.Path)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1635"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1633"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1634,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1635,1"
      Dst: "[java.nio.file.Files].isDirectory(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1635,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1635,1"
      Dst: "[java.nio.file.Files].size(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].requireExists(java.nio.file.Path,java.lang.String,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.lang.String"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1466"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1468"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1465,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1466,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.file.PathUtils:1467,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].sizeOfDirectory(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].countDirectory(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].getLong()"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].countDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].getLong()"
    - Src: "net.jsign.commons.io.file.PathUtils:1668,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$readFileToString$12(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2684,1"
      Dst: "[java.nio.file.Files].newInputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$listFilesAndDirs$11(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2336,1"
      Dst: "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2234"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2236"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2234"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2233"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2235,1"
      Dst: "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2236,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - Src: "net.jsign.commons.io.FileUtils:2239,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2240,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$listFiles$10(java.io.File,boolean,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2311,1"
      Dst: "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2946"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2948"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2947"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$listFiles$9(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2296,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2296,1"
      Dst: "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].listAccumulate(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter,java.nio.file.FileVisitOption[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.file.AccumulatorPathVisitor"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "java.nio.file.FileVisitOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2234"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:-1"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileUtils:2236"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2234"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2233"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2235,1"
      Dst: "[net.jsign.commons.io.filefilter.FileEqualsFileFilter].<init>(java.io.File)"
    - Src: "net.jsign.commons.io.FileUtils:2236,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].or(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.Counters].noopPathCounters()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.FileUtils$lambda_listAccumulate_8__76].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2237,1"
      Dst: "[net.jsign.commons.io.file.AccumulatorPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.file.PathFilter,net.jsign.commons.io.function.IOBiFunction)"
    - Src: "net.jsign.commons.io.FileUtils:2239,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "net.jsign.commons.io.FileUtils:2240,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2241,1"
      Dst: "[java.nio.file.Files].walkFileTree(java.nio.file.Path,java.util.Set,int,java.nio.file.FileVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$listAccumulate$8(java.nio.file.Path,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$iterateFiles$7(java.io.File,boolean,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2069,1"
      Dst: "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileUtils].streamFiles(java.io.File,boolean,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileUtils:2946"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileUtils:2948"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileUtils:2947"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.FileUtils].toSuffixes(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.SuffixFileFilter].<init>(java.lang.String[])"
    - Src: "net.jsign.commons.io.FileUtils:2948,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].and(net.jsign.commons.io.filefilter.IOFileFilter)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils].toMaxDepth(boolean)"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].walk(java.nio.file.Path,net.jsign.commons.io.file.PathFilter,int,boolean,java.nio.file.FileVisitOption[])"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[net.jsign.commons.io.FileUtils$toFile__87].bootstrap$()"
    - Src: "net.jsign.commons.io.FileUtils:2950,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileOlder$6(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1980,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "long"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.attribute.FileTime].fromMillis(long)"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1216,1"
      Dst: "[java.nio.file.attribute.FileTime].fromMillis(long)"
    - Src: "net.jsign.commons.io.file.PathUtils:1216,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1186"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1183,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1186,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileOlder$5(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1965,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.time.Instant"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1201,1"
      Dst: "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - Src: "net.jsign.commons.io.file.PathUtils:1201,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1186"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1183,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1186,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileOlder$4(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.Path)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:1936,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1229,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1229,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isOlder(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1186"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1186"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1185"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1183,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1186,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileNewer$3(java.io.File,long)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1768,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,long,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "long"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.attribute.FileTime].fromMillis(long)"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1155,1"
      Dst: "[java.nio.file.attribute.FileTime].fromMillis(long)"
    - Src: "net.jsign.commons.io.file.PathUtils:1155,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1122"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1122,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1125,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileNewer$2(java.io.File,java.time.Instant)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.Instant"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1753,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.time.Instant"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1140,1"
      Dst: "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - Src: "net.jsign.commons.io.file.PathUtils:1140,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1122"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1122,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1125,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileNewer$1(java.io.File,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.Path)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.Path)"
    - Src: "net.jsign.commons.io.FileUtils:1723,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1168,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1168,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.attribute.FileTime"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1009,1"
      Dst: "[java.nio.file.Files].getLastModifiedTime(java.nio.file.Path,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.FileTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1122"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1125"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1124"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1122,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].notExists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1125,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].compareLastModifiedTimeTo(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.FileUtils].lambda$isFileNewer$0(java.io.File,java.time.chrono.ChronoZonedDateTime)"
    functionSourceFile: "net.jsign.commons.io.FileUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.time.chrono.ChronoZonedDateTime"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].toPath()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.chrono.ChronoZonedDateTime,java.nio.file.LinkOption[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.chrono.ChronoZonedDateTime,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.FileUtils:1694,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.chrono.ChronoZonedDateTime,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.time.chrono.ChronoZonedDateTime"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1106,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1107,1"
      Dst: "[java.time.chrono.ChronoZonedDateTime].toInstant()"
    - Src: "net.jsign.commons.io.file.PathUtils:1107,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.time.Instant,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.time.Instant"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1140,1"
      Dst: "[java.nio.file.attribute.FileTime].'from'(java.time.Instant)"
    - Src: "net.jsign.commons.io.file.PathUtils:1140,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isNewer(java.nio.file.Path,java.nio.file.attribute.FileTime,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].testBitZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].toBigInteger()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].toBigInteger(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].getFieldName()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "addPInvTo(int[])"
        - "gte(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].addOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs:
        - "sub(int,int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].square()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].invert()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].sqrt()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat384].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int,int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].<init>(net.jsign.bouncycastle.crypto.params.KeyParameter,int,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.KeyParameter"
    - "int"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getMacSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].access$000()"
    - "[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.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.util.SSHNamedCurves].access$000()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.crypto.util.SSHNamedCurves$4:-1,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.OpenSC].<init>()"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -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.jsign.OpenSC:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.OpenSC].getProvider(java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    - "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.OpenSC:46,1"
      Dst: "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    - Src: "net.jsign.OpenSC:46,1"
      Dst: "[net.jsign.ProviderUtils].createSunPKCS11Provider(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.OpenSC].getSunPKCS11Configuration(java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.OpenSC].getOpenSCLibrary()"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.ProviderException].<init>(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.security.ProviderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:57"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:60"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:59"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:68"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:73"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:56,1"
      Dst: "[net.jsign.OpenSC].getOpenSCLibrary()"
    - Src: "net.jsign.OpenSC:57,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:58,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.String)"
    - Src: "net.jsign.OpenSC:60,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.OpenSC:60,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:64,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.OpenSC:66,1"
      Dst: "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    - Src: "net.jsign.OpenSC:69,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.OpenSC:72,1"
      Dst: "[java.security.ProviderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.OpenSC].getTokenSlot(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getAbsolutePath()"
    - "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotInfo(long)"
    - "[java.lang.String].<init>(char[])"
    - "[java.lang.String].trim()"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[sun.security.pkcs11.wrapper.PKCS11].C_GetTokenInfo(long)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Long].longValue()"
    - "[java.util.List].isEmpty()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:89"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:106"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:105"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:92"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:93"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:92"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:92"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:95"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:100"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:106"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:110"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:111"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:113"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:84,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.OpenSC:84,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].getInstance(java.lang.String,java.lang.String,sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS,boolean)"
    - Src: "net.jsign.OpenSC:85,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotList(boolean)"
    - Src: "net.jsign.OpenSC:87,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.OpenSC:90,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetSlotInfo(long)"
    - Src: "net.jsign.OpenSC:91,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.OpenSC:91,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.OpenSC:92,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "net.jsign.OpenSC:92,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:93,1"
      Dst: "[sun.security.pkcs11.wrapper.PKCS11].C_GetTokenInfo(long)"
    - Src: "net.jsign.OpenSC:95,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.OpenSC:101,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.OpenSC:101,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.OpenSC:106,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.OpenSC:107,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.OpenSC:107,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.OpenSC:110,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:111,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[net.jsign.OpenSC].getOpenSCLibrary()"
    functionSourceFile: "net.jsign.OpenSC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.File].exists()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.OpenSC:124"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:132"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:126"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:126"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:128"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:133"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:139"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:152"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.OpenSC:154"
      Branch Sides:
      - BranchSide: "net.jsign.OpenSC:157"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.OpenSC:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.OpenSC:121,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.OpenSC:124,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.OpenSC:126,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.OpenSC:126,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.OpenSC:131,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.OpenSC:138,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.OpenSC:140,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.OpenSC:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.OpenSC:154,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 17
  - functionName: "[net.jsign.asn1.authenticode.SpcPeImageData].<init>()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcPeImageData"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - "[net.jsign.asn1.authenticode.SpcLink].<init>()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:45,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:52,1"
      Dst: "[net.jsign.asn1.authenticode.SpcLink].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcPeImageData"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 110
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:56,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:57,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:58,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.SpcPeImageData:60,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$31:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 109
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT113R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].<init>()"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.OsgiServiceLocator:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].checkOsgiAvailable()"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:40"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:38"
        BranchSideFuncs:
        - "logException(java.lang.String,java.lang.Throwable)"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:38,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:39,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:40,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:44,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.log4j.util.LowLevelLogUtil"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:54,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].log(java.lang.String)"
    - Src: "net.jsign.log4j.util.LowLevelLogUtil:55,1"
      Dst: "[net.jsign.log4j.util.LowLevelLogUtil].logException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].isAvailable()"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.stream.Stream"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:54,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - "[org.osgi.framework.Bundle].getBundleContext()"
    - "[java.util.Collection].stream()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].empty()"
    functionUses: 1
    ICount: 28
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:62"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:69"
        BranchSideFuncs:
        - "getServiceReferences(java.lang.Class,java.lang.String)"
        - "bootstrap$(org.osgi.framework.BundleContext)"
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:63"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:72"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:59,1"
      Dst: "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:61,1"
      Dst: "[org.osgi.framework.Bundle].getBundleContext()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:73,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:78,1"
      Dst: "[java.util.stream.Stream].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.OsgiServiceLocator].loadServices(java.lang.Class,java.lang.invoke.MethodHandles$Lookup,boolean)"
    functionSourceFile: "net.jsign.log4j.util.OsgiServiceLocator"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "java.util.stream.Stream"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.invoke.MethodHandles$Lookup"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - "[org.osgi.framework.Bundle].getBundleContext()"
    - "[java.util.Collection].stream()"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Stream].empty()"
    functionUses: 1
    ICount: 28
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:60"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:62"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:70"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:69"
        BranchSideFuncs:
        - "getServiceReferences(java.lang.Class,java.lang.String)"
        - "bootstrap$(org.osgi.framework.BundleContext)"
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:63"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.OsgiServiceLocator:72"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:78"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getLogger()"
      - BranchSide: "net.jsign.log4j.util.OsgiServiceLocator:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:58,1"
      Dst: "[java.lang.invoke.MethodHandles$Lookup].lookupClass()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:59,1"
      Dst: "[org.osgi.framework.FrameworkUtil].getBundle(java.lang.Class)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:61,1"
      Dst: "[org.osgi.framework.Bundle].getBundleContext()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:64,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[org.osgi.framework.BundleContext].getServiceReferences(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[net.jsign.log4j.util.OsgiServiceLocator$getService__16].bootstrap$(org.osgi.framework.BundleContext)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:70,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:73,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.log4j.util.OsgiServiceLocator:78,1"
      Dst: "[java.util.stream.Stream].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil].<init>()"
    functionSourceFile: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil"
    linkageType: null
    functionLinenumber: -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.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil].isEnabled()"
    functionSourceFile: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:51"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:50"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil].getCurrentStackTrace()"
    functionSourceFile: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Deque"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil$PrivateSecurityManager].getClassContext()"
    - "[java.util.ArrayDeque].<init>(int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:66,1"
      Dst: "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil$PrivateSecurityManager].getClassContext()"
    - Src: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:67,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil:68,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil$PrivateSecurityManager].getClassContext()"
    functionSourceFile: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil$PrivateSecurityManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.SecurityManager].getClassContext()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.PrivateSecurityManagerStackTraceUtil$PrivateSecurityManager:76,1"
      Dst: "[java.lang.SecurityManager].getClassContext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    functionUses: 84
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "readObject()"
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1InputStream:-2"
        BranchSideFuncs:
        - "<init>(int)"
        - "readObject()"
        - "<init>()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ParsingException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ParsingException:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    functionUses: 8
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "getContents()"
        - "<init>(byte[])"
        - "getObjects()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1InputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1InputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(java.io.InputStream,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].readObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    functionUses: 15
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].iterator()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    functionUses: 8
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    functionUses: 85
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toArray()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toArrayInternal()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toArrayInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 30
    ICount: 10
    EdgeCount: 77
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "getContents()"
        - "encodedLength(boolean)"
        - "getLengthOfEncodingDL(boolean,int)"
        - "toDLObject()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfEncodingDL(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    functionUses: 58
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-2"
        BranchSideFuncs:
        - "getLengthOfDL(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].getLengthOfDL(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionUses: 35
    ICount: 10
    EdgeCount: 77
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "getContents()"
        - "writeEncodingDL(boolean,int,byte[])"
        - "toDLObject()"
        - "encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingDL(boolean,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 44
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeDL(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1BitString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1BitString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1BitString()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1BitString()"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1BitString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    functionUses: 28
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1External()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1External"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1External()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1External()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1External()"
    functionUses: 6
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1External()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    functionUses: 28
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1OctetString()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1OctetString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1OctetString()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1OctetString()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1OctetString()"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1OctetString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    functionUses: 28
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1Set()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.DLSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.BERSequence].toASN1Set()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].toASN1Set()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1Set()"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toASN1Set()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    functionUses: 28
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDERObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    functionUses: 25
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDERObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].toDLObject()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    functionUses: 28
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].toDLObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].force()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - "[java.io.FilterInputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-2"
        BranchSideFuncs:
        - "takeElements()"
        - "readVector()"
        - "<init>(byte[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[],boolean)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readVector()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.io.FilterInputStream].close()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].takeElements()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.LazyEncodedSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ParsingException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getContents()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.LazyEncodedSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].getCounter()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].getSeed()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].getUsageIndex()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 5
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcIndirectDataContent].<init>(net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue,net.jsign.bouncycastle.asn1.x509.DigestInfo)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcIndirectDataContent"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    - "net.jsign.bouncycastle.asn1.x509.DigestInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcIndirectDataContent:37,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$19:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.SignerHelper].<init>(net.jsign.Console,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Console"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.SignerHelper:105,1"
      Dst: "[net.jsign.KeyStoreBuilder].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:109,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:114,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:119,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].alias(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keypass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:129,1"
      Dst: "[net.jsign.KeyStoreBuilder].keypass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:134,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].keyfile(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keyfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].certfile(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:144,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].certfile(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:149,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].certfile(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].alg(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsretries(int)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].tsretrywait(int)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].name(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].url(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].replace(boolean)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].encoding(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:209,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].detached(boolean)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.SignerHelper"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].param(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.SignerHelper"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.SignerHelper].keystore(java.lang.String)"
    - "[net.jsign.SignerHelper].storepass(java.lang.String)"
    - "[net.jsign.SignerHelper].storetype(java.lang.String)"
    - "[net.jsign.SignerHelper].alias(java.lang.String)"
    - "[net.jsign.SignerHelper].keypass(java.lang.String)"
    - "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    - "[net.jsign.SignerHelper].certfile(java.lang.String)"
    - "[net.jsign.SignerHelper].alg(java.lang.String)"
    - "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    - "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[net.jsign.SignerHelper].tsretries(int)"
    - "[net.jsign.SignerHelper].tsretrywait(int)"
    - "[net.jsign.SignerHelper].name(java.lang.String)"
    - "[net.jsign.SignerHelper].url(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    - "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[net.jsign.SignerHelper].replace(boolean)"
    - "[net.jsign.SignerHelper].encoding(java.lang.String)"
    - "[net.jsign.SignerHelper].detached(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 145
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:219"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:223"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:223"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:223,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "net.jsign.SignerHelper:223,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:224,1"
      Dst: "[net.jsign.SignerHelper].keystore(java.lang.String)"
    - Src: "net.jsign.SignerHelper:225,1"
      Dst: "[net.jsign.SignerHelper].storepass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:226,1"
      Dst: "[net.jsign.SignerHelper].storetype(java.lang.String)"
    - Src: "net.jsign.SignerHelper:227,1"
      Dst: "[net.jsign.SignerHelper].alias(java.lang.String)"
    - Src: "net.jsign.SignerHelper:228,1"
      Dst: "[net.jsign.SignerHelper].keypass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:229,1"
      Dst: "[net.jsign.SignerHelper].keyfile(java.lang.String)"
    - Src: "net.jsign.SignerHelper:230,1"
      Dst: "[net.jsign.SignerHelper].certfile(java.lang.String)"
    - Src: "net.jsign.SignerHelper:231,1"
      Dst: "[net.jsign.SignerHelper].alg(java.lang.String)"
    - Src: "net.jsign.SignerHelper:232,1"
      Dst: "[net.jsign.SignerHelper].tsaurl(java.lang.String)"
    - Src: "net.jsign.SignerHelper:233,1"
      Dst: "[net.jsign.SignerHelper].tsmode(java.lang.String)"
    - Src: "net.jsign.SignerHelper:234,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.SignerHelper:234,1"
      Dst: "[net.jsign.SignerHelper].tsretries(int)"
    - Src: "net.jsign.SignerHelper:235,1"
      Dst: "[net.jsign.SignerHelper].tsretrywait(int)"
    - Src: "net.jsign.SignerHelper:236,1"
      Dst: "[net.jsign.SignerHelper].name(java.lang.String)"
    - Src: "net.jsign.SignerHelper:237,1"
      Dst: "[net.jsign.SignerHelper].url(java.lang.String)"
    - Src: "net.jsign.SignerHelper:238,1"
      Dst: "[net.jsign.SignerHelper].proxyUrl(java.lang.String)"
    - Src: "net.jsign.SignerHelper:239,1"
      Dst: "[net.jsign.SignerHelper].proxyUser(java.lang.String)"
    - Src: "net.jsign.SignerHelper:240,1"
      Dst: "[net.jsign.SignerHelper].proxyPass(java.lang.String)"
    - Src: "net.jsign.SignerHelper:241,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.SignerHelper:241,1"
      Dst: "[net.jsign.SignerHelper].replace(boolean)"
    - Src: "net.jsign.SignerHelper:242,1"
      Dst: "[net.jsign.SignerHelper].encoding(java.lang.String)"
    - Src: "net.jsign.SignerHelper:243,1"
      Dst: "[net.jsign.SignerHelper].detached(boolean)"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:245,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 41
    BBCount: 65
  - functionName: "[net.jsign.SignerHelper].setBaseDir(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].setBaseDir(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:250,1"
      Dst: "[net.jsign.KeyStoreBuilder].setBaseDir(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].setBaseDir(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].build()"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.AuthenticodeSigner"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].build()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreBuilder].provider()"
    - "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.Set].isEmpty()"
    - "[java.security.Provider].getName()"
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - "[java.security.KeyStore].aliases()"
    - "[java.util.Collections].list(java.util.Enumeration)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.KeyStoreBuilder].certfile()"
    - "[net.jsign.KeyStoreType].hasCertificate()"
    - "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.KeyStoreBuilder].keypass()"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    - "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    - "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    - "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    - "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    - "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - "[net.jsign.timestamp.TimestampingMode].of(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    - "[java.lang.String].split(java.lang.String)"
    - "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    functionUses: 0
    ICount: 277
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:258"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:264"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:272"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:274"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:273"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:273"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:273"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:274"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:287"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:305"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:288"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:288"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:287"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:289"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:303"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:302"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:292"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:293"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:293"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:292"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:294"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:297"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:296"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:305"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:305"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:306"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:311"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:310"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:312"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:316"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:315"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:327"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:325"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:324"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:328"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:335"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:334"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:340"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:345"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:344"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:340"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:345"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:344"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:356"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:356"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:358"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:356"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:361"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:256,1"
      Dst: "[net.jsign.KeyStoreBuilder].build()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:258,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.SignerHelper:261,1"
      Dst: "[net.jsign.KeyStoreBuilder].provider()"
    - Src: "net.jsign.SignerHelper:267,1"
      Dst: "[net.jsign.KeyStoreType].getAliases(java.security.KeyStore)"
    - Src: "net.jsign.SignerHelper:269,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.SignerHelper:272,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "net.jsign.SignerHelper:273,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.SignerHelper:273,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:274,1"
      Dst: "[java.util.Set].size()"
    - Src: "net.jsign.SignerHelper:275,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.SignerHelper:275,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.SignerHelper:277,1"
      Dst: "[java.lang.String].join(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "net.jsign.SignerHelper:283,1"
      Dst: "[java.security.KeyStore].getCertificateChain(java.lang.String)"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.security.KeyStore].aliases()"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.util.Collections].list(java.util.Enumeration)"
    - Src: "net.jsign.SignerHelper:291,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "net.jsign.SignerHelper:294,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:305,1"
      Dst: "[net.jsign.KeyStoreBuilder].certfile()"
    - Src: "net.jsign.SignerHelper:305,1"
      Dst: "[net.jsign.KeyStoreType].hasCertificate()"
    - Src: "net.jsign.SignerHelper:311,1"
      Dst: "[net.jsign.CertificateUtils].loadCertificateChain(java.io.File)"
    - Src: "net.jsign.SignerHelper:312,1"
      Dst: "[java.security.cert.Certificate].equals(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:316,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:325,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.SignerHelper:326,1"
      Dst: "[net.jsign.KeyStoreBuilder].keypass()"
    - Src: "net.jsign.SignerHelper:327,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.SignerHelper:328,1"
      Dst: "[net.jsign.KeyStoreType].reuseKeyStorePassword()"
    - Src: "net.jsign.SignerHelper:335,1"
      Dst: "[java.security.KeyStore].getKey(java.lang.String,char[])"
    - Src: "net.jsign.SignerHelper:340,1"
      Dst: "[net.jsign.DigestAlgorithm].of(java.lang.String)"
    - Src: "net.jsign.SignerHelper:345,1"
      Dst: "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.SignerHelper:351,1"
      Dst: "[net.jsign.AuthenticodeSigner].<init>(java.security.cert.Certificate[],java.security.PrivateKey)"
    - Src: "net.jsign.SignerHelper:352,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramName(java.lang.String)"
    - Src: "net.jsign.SignerHelper:353,1"
      Dst: "[net.jsign.AuthenticodeSigner].withProgramURL(java.lang.String)"
    - Src: "net.jsign.SignerHelper:354,1"
      Dst: "[net.jsign.AuthenticodeSigner].withDigestAlgorithm(net.jsign.DigestAlgorithm)"
    - Src: "net.jsign.SignerHelper:355,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignatureProvider(java.security.Provider)"
    - Src: "net.jsign.SignerHelper:356,1"
      Dst: "[net.jsign.AuthenticodeSigner].withSignaturesReplaced(boolean)"
    - Src: "net.jsign.SignerHelper:357,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestamping(boolean)"
    - Src: "net.jsign.SignerHelper:358,1"
      Dst: "[net.jsign.timestamp.TimestampingMode].of(java.lang.String)"
    - Src: "net.jsign.SignerHelper:358,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingMode(net.jsign.timestamp.TimestampingMode)"
    - Src: "net.jsign.SignerHelper:359,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetries(int)"
    - Src: "net.jsign.SignerHelper:360,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingRetryWait(int)"
    - Src: "net.jsign.SignerHelper:361,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.SignerHelper:361,1"
      Dst: "[net.jsign.AuthenticodeSigner].withTimestampingAuthority(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 13
    BBCount: 69
  - functionName: "[net.jsign.SignerHelper].sign(java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.SignerHelper].sign(java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:365,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.SignerHelper:365,1"
      Dst: "[net.jsign.SignerHelper].sign(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].isAbsolute()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:206"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:210"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:210"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:213"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:210,1"
      Dst: "[java.io.File].isAbsolute()"
    - Src: "net.jsign.KeyStoreBuilder:213,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.SignerHelper].sign(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - "[net.jsign.Console].info(java.lang.String)"
    - "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.SignerHelper].build()"
    - "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - "[java.io.Closeable].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:369"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:372"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:371"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:372"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:376"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:375"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:380"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:389"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:393"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:398"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:403"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:376"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:404"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:370,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:372,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:376,1"
      Dst: "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - Src: "net.jsign.SignerHelper:377,1"
      Dst: "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - Src: "net.jsign.SignerHelper:381,1"
      Dst: "[net.jsign.Console].info(java.lang.String)"
    - Src: "net.jsign.SignerHelper:383,1"
      Dst: "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:385,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:390,1"
      Dst: "[net.jsign.SignerHelper].build()"
    - Src: "net.jsign.SignerHelper:396,1"
      Dst: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - Src: "net.jsign.SignerHelper:399,1"
      Dst: "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:403,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 27
  - functionName: "[net.jsign.SignerHelper].sign(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.SignerException].<init>(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - "[net.jsign.Console].info(java.lang.String)"
    - "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.SignerHelper].build()"
    - "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - "[java.io.Closeable].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:369"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:372"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:371"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:372"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:376"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:375"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:378"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:388"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:380"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:382"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:389"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:393"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:392"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:393"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:398"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:402"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:403"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:409"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:376"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:404"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:370,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:372,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:373,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:376,1"
      Dst: "[net.jsign.Signable].of(java.io.File,java.nio.charset.Charset)"
    - Src: "net.jsign.SignerHelper:377,1"
      Dst: "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    - Src: "net.jsign.SignerHelper:381,1"
      Dst: "[net.jsign.Console].info(java.lang.String)"
    - Src: "net.jsign.SignerHelper:383,1"
      Dst: "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:385,1"
      Dst: "[net.jsign.SignerException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:390,1"
      Dst: "[net.jsign.SignerHelper].build()"
    - Src: "net.jsign.SignerHelper:396,1"
      Dst: "[net.jsign.AuthenticodeSigner].sign(net.jsign.Signable)"
    - Src: "net.jsign.SignerHelper:399,1"
      Dst: "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    - Src: "net.jsign.SignerHelper:403,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "net.jsign.SignerHelper:404,1"
      Dst: "[java.lang.Throwable].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 27
  - functionName: "[net.jsign.SignerHelper].attach(net.jsign.Signable,java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Signable"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - "[net.jsign.Signable].save()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:413,1"
      Dst: "[net.jsign.commons.io.FileUtils].readFileToByteArray(java.io.File)"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].<init>(byte[])"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1InputStream].readObject()"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.SignerHelper:414,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - Src: "net.jsign.SignerHelper:416,1"
      Dst: "[net.jsign.Signable].setSignature(net.jsign.bouncycastle.cms.CMSSignedData)"
    - Src: "net.jsign.SignerHelper:417,1"
      Dst: "[net.jsign.Signable].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].detach(net.jsign.Signable,java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.Signable"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.Signable].getSignatures()"
    - "[java.util.List].get(int)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:422,1"
      Dst: "[net.jsign.Signable].getSignatures()"
    - Src: "net.jsign.SignerHelper:422,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.SignerHelper:423,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].toASN1Structure()"
    - Src: "net.jsign.SignerHelper:423,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.SignerHelper:425,1"
      Dst: "[net.jsign.commons.io.FileUtils].writeByteArrayToFile(java.io.File,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].getDetachedSignature(java.io.File)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getParentFile()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].getParentFile()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].getName()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:429,1"
      Dst: "[java.io.File].<init>(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.SignerHelper].initializeProxy(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].getPort()"
    - "[net.jsign.SignerHelper$1].<init>(net.jsign.SignerHelper,java.net.URL,int)"
    - "[java.net.ProxySelector].setDefault(java.net.ProxySelector)"
    - "[net.jsign.SignerHelper$2].<init>(net.jsign.SignerHelper,java.lang.String,java.lang.String)"
    - "[java.net.Authenticator].setDefault(java.net.Authenticator)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.SignerHelper:441"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:441"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:442"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:445"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:444"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:446"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:444"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.SignerHelper:466"
      Branch Sides:
      - BranchSide: "net.jsign.SignerHelper:474"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.SignerHelper:473"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.SignerHelper:441,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.SignerHelper:441,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.SignerHelper:442,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.SignerHelper:443,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.SignerHelper:445,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.SignerHelper:446,1"
      Dst: "[java.net.URL].getPort()"
    - Src: "net.jsign.SignerHelper:448,1"
      Dst: "[net.jsign.SignerHelper$1].<init>(net.jsign.SignerHelper,java.net.URL,int)"
    - Src: "net.jsign.SignerHelper:448,1"
      Dst: "[java.net.ProxySelector].setDefault(java.net.ProxySelector)"
    - Src: "net.jsign.SignerHelper:467,1"
      Dst: "[net.jsign.SignerHelper$2].<init>(net.jsign.SignerHelper,java.lang.String,java.lang.String)"
    - Src: "net.jsign.SignerHelper:467,1"
      Dst: "[java.net.Authenticator].setDefault(java.net.Authenticator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[net.jsign.SignerHelper].access$000(net.jsign.SignerHelper)"
    functionSourceFile: "net.jsign.SignerHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.Console"
    argCount: 1
    argTypes:
    - "net.jsign.SignerHelper"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$20:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:122,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:126"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:129"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:129"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:128"
        BranchSideFuncs:
        - "ceilingNextPowerOfTwo(int)"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:125,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:129,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:133"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:135"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:134"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:135"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:139"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:132,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:134,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:136,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:137,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].<init>(java.util.Map)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Map].size()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:143"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:147"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:141,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:142,1"
      Dst: "[java.util.Map].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:142,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:142,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:143,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:143,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:145,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:145,1"
      Dst: "[java.util.Objects].toString(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:145,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:145,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:151,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ConcurrentModificationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:157,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].clear()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:163"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:166"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:166,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:167,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:169,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:151,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ConcurrentModificationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:157,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].containsKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:176"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:176,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:227"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:227"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:226"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].toMap()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].getValueAt(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].getKeyAt(int)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].<init>(int)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:182"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:186"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "getValueAt(int)"
        - "getKeyAt(int)"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:185"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:184"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:182"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "getValueAt(int)"
        - "getKeyAt(int)"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:181,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:181,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:183,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].getValueAt(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:184,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].getKeyAt(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:184,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:184,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].getValueAt(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:395"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:395"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:398"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:397"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].getKeyAt(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 385
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:386"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:387"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:386"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:386"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:388"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].freeze()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].isFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].getValue(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:203"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:202,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].isEmpty()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:211"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:210"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:227"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:227"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:226"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:235"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:238"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:237"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:239"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:232,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:233,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:236,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:238,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:243,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:151,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ConcurrentModificationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:157,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:248,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:249,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:338"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:341"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:339,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:350,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:248,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:249,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].putAll(net.jsign.log4j.util.ReadOnlyStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.ReadOnlyStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].merge(net.jsign.log4j.util.SortedArrayStringMap)"
    - "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:258"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:258"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:261"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:258"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:267"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:273"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:268"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:271"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:270"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:273"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:276"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:258,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].isEmpty()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:264,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:265,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:269,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:271,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].merge(net.jsign.log4j.util.SortedArrayStringMap)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:274,1"
      Dst: "[net.jsign.log4j.util.ReadOnlyStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:151,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ConcurrentModificationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:157,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.SortedArrayStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:279"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:283,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].merge(net.jsign.log4j.util.SortedArrayStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.SortedArrayStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:295"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:301"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:323"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:333"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:332"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:325"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:327"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:326"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:327"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:323"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:294,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:301,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:303,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:324,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:326,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:333,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 574
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:575,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:248,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:249,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].initFrom0(net.jsign.log4j.util.SortedArrayStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.SortedArrayStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:279"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:283"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:283,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].merge(net.jsign.log4j.util.SortedArrayStringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.SortedArrayStringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 91
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:295"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:300"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:299"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:301"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:323"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:333"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:332"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:325"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:327"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:326"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:327"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:323"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:294,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:301,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:303,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:324,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:326,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].insertAt(int,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:333,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ensureCapacity()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:338"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:341"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:339,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].resize(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:350,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].remove(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:367"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:371"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:370"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:372"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:382"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:371,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:373,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:374,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:376,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].indexOfKey(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:216"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:218"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:219"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:222"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:222"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:220,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].nullKeyIndex()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:223,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNotFrozen()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:150"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:151,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].assertNoConcurrentModification()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ConcurrentModificationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:156"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:157,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].getKeyAt(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 385
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:386"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:387"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:386"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:386"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:389"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:388"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].getValueAt(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:395"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:396"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:395"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:395"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:398"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:397"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].forEach(net.jsign.log4j.util.BiConsumer)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.BiConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:411"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:412,1"
      Dst: "[net.jsign.log4j.util.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].forEach(net.jsign.log4j.util.TriConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.util.TriConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.TriConsumer].accept(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:424"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:428"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:425,1"
      Dst: "[net.jsign.log4j.util.TriConsumer].accept(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 433
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 5
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:434"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:437"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:436"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:437"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:440"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:441"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:444"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:443"
        BranchSideFuncs:
        - "size()"
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:444"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:452"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:451"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:445"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:447"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:448"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:444"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:443"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:441,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:445,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].size()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 457
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode(java.lang.Object[],int)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:459,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].hashCode(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].hashCode(java.lang.Object[],int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.poi.hpsf.ClassID].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.util.Fingerprint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].hashCode()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].hashCode()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.commons.io.ByteOrderMark].hashCode()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.field.PrimeField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null].hashCode()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].hashCode()"
    - "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.log4j.message.ObjectMessage].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[net.jsign.log4j.message.SimpleMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.log4j.message.StringFormattedMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].hashCode()"
    - "[net.jsign.log4j.Level].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.commons.cli.Option].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.log4j.message.ParameterizedMessage].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.log4j.spi.Provider].hashCode()"
    - "[net.jsign.bouncycastle.cms.SignerId].hashCode()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 2
    ICount: 16
    EdgeCount: 185
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:466"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:469"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:467"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:466"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:467,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].hashCode(java.lang.Object[],int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.poi.hpsf.ClassID].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.util.Fingerprint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.commons.io.file.Counters$LongCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].hashCode()"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].hashCode()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.commons.io.ByteOrderMark].hashCode()"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set].hashCode()"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].hashCode()"
    - "[net.jsign.bouncycastle.math.field.PrimeField].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Null].hashCode()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].hashCode()"
    - "[net.jsign.commons.io.CloseableURLConnection].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].hashCode()"
    - "[net.jsign.log4j.message.ObjectMessage].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1External].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[net.jsign.log4j.message.SimpleMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].hashCode()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].hashCode()"
    - "[net.jsign.log4j.message.StringFormattedMessage].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1TaggedObject].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].hashCode()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Null].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].hashCode()"
    - "[net.jsign.log4j.Level].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].hashCode()"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].hashCode()"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].hashCode()"
    - "[net.jsign.commons.cli.Option].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].hashCode()"
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].hashCode()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].hashCode()"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].hashCode()"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BitString].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].hashCode()"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].hashCode()"
    - "[net.jsign.log4j.message.ParameterizedMessage].hashCode()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].hashCode()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].hashCode()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].hashCode()"
    - "[net.jsign.log4j.spi.Provider].hashCode()"
    - "[net.jsign.bouncycastle.cms.SignerId].hashCode()"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].hashCode()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 2
    ICount: 16
    EdgeCount: 185
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:466"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:469"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:467"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:466"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:467,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].toString()"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 6
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:476"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:483"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:477"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:480"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:479"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:481"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:474,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:475,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:478,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:481,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:484,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - "[java.io.ObjectOutputStream].writeInt(int)"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].marshall(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:503"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:506"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:505"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:513"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:523"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:514"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:523"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:500,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:504,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:504,1"
      Dst: "[java.io.ObjectOutputStream].writeInt(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:515,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:517,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].marshall(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:519,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 574
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:575,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].marshall(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - "[java.io.ObjectOutputStream].flush()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ObjectOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:527"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:530"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:530,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:531,1"
      Dst: "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:532,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:533,1"
      Dst: "[java.io.ObjectOutputStream].flush()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:534,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:535,1"
      Dst: "[java.io.ObjectOutputStream].close()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:528,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    functionSourceFile: "net.jsign.log4j.status.StatusLogger"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "net.jsign.log4j.status.StatusLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].marshall(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - "[java.io.ObjectOutputStream].flush()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ObjectOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:527"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:530"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:530,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:531,1"
      Dst: "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:532,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:533,1"
      Dst: "[java.io.ObjectOutputStream].flush()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:534,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:535,1"
      Dst: "[java.io.ObjectOutputStream].close()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:528,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].unmarshall(byte[],java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.log4j.util.FilteredObjectInputStream].getAllowedClasses()"
    - "[net.jsign.log4j.util.FilteredObjectInputStream].<init>(java.io.InputStream,java.util.Collection)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    - "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - "[java.io.ObjectInputStream].readObject()"
    - "[java.io.ObjectInputStream].close()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:545"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:550"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:549"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:542,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:546,1"
      Dst: "[net.jsign.log4j.util.FilteredObjectInputStream].getAllowedClasses()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:547,1"
      Dst: "[net.jsign.log4j.util.FilteredObjectInputStream].<init>(java.io.InputStream,java.util.Collection)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:550,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:552,1"
      Dst: "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:555,1"
      Dst: "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:559,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:561,1"
      Dst: "[java.io.ObjectInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.FilteredObjectInputStream].getAllowedClasses()"
    functionSourceFile: "net.jsign.log4j.util.FilteredObjectInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.FilteredObjectInputStream].<init>(java.io.InputStream,java.util.Collection)"
    functionSourceFile: "net.jsign.log4j.util.FilteredObjectInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.FilteredObjectInputStream:76,1"
      Dst: "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].ceilingNextPowerOfTwo(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: 574
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:575,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.io.ObjectInputStream].readInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.InvalidObjectException].<init>(java.lang.String)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    - "[java.io.ObjectInputStream].readObject()"
    - "[net.jsign.log4j.util.SortedArrayStringMap].unmarshall(byte[],java.io.ObjectInputStream)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    functionUses: 0
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:583"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:587"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:586"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:583"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:587"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:586"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:595"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:600"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:599"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:601"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:606"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:605"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:606"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:609"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:608"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:613"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:623"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:622"
        BranchSideFuncs: []
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:617"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:614"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:613"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:584,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:587,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:594,1"
      Dst: "[java.io.ObjectInputStream].readInt()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:596,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:596,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:596,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:596,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:596,1"
      Dst: "[java.io.InvalidObjectException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:607,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:614,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:617,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].unmarshall(byte[],java.io.ObjectInputStream)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:619,1"
      Dst: "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].inflateTable(int)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].unmarshall(byte[],java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[net.jsign.log4j.util.FilteredObjectInputStream].getAllowedClasses()"
    - "[net.jsign.log4j.util.FilteredObjectInputStream].<init>(java.io.InputStream,java.util.Collection)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    - "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - "[java.io.ObjectInputStream].readObject()"
    - "[java.io.ObjectInputStream].close()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.SortedArrayStringMap:545"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:550"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.SortedArrayStringMap:549"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:542,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:546,1"
      Dst: "[net.jsign.log4j.util.FilteredObjectInputStream].getAllowedClasses()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:547,1"
      Dst: "[net.jsign.log4j.util.FilteredObjectInputStream].<init>(java.io.InputStream,java.util.Collection)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:550,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:552,1"
      Dst: "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:555,1"
      Dst: "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:559,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:561,1"
      Dst: "[java.io.ObjectInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].handleSerializationException(java.lang.Throwable,int,java.lang.String)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.status.StatusLogger].getLogger()"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:627,1"
      Dst: "[net.jsign.log4j.spi.AbstractLogger].warn(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.SortedArrayStringMap].lambda$static$0(java.lang.String,java.lang.Object,net.jsign.log4j.util.StringMap)"
    functionSourceFile: "net.jsign.log4j.util.SortedArrayStringMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "net.jsign.log4j.util.StringMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.SortedArrayStringMap:60,1"
      Dst: "[net.jsign.log4j.util.StringMap].putValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat320].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1T61String$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1T61String$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1T61String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1T61String$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1T61String$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1T61String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1T61String$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1T61String].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 26
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "getObjectAt(int)"
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].getParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedList].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].addTask(java.lang.Runnable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$3].run()"
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].run()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeLoader$1$1].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.NativeDisposer].run()"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].isInterrupted()"
    - "[java.util.LinkedList].poll()"
    - "[java.lang.Runnable].run()"
    - "[java.lang.Thread].sleep(long)"
    - "[java.lang.Thread].interrupt()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    functionUses: 4
    ICount: 34
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-2"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].isInterrupted()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.LinkedList].poll()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].sleep(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyDaemon:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.ASN1OctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.ASN1OctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECCurve,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPointEncoding()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].decodePoint(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].isPointCompressed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512tDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].readDigestLength(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].readDigestLength(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicePurpose].values()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].restoreState(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].readDigestLength(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].longToBigEndian(long,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionUses: 6
    ICount: 45
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].longToBigEndian(long,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].longToBigEndian(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "intToBigEndian(int,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "intToBigEndian(int,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].tIvGenerate(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    functionUses: 0
    ICount: 64
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].finish()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].longToBigEndian(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "intToBigEndian(int,byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "intToBigEndian(int,byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].intToBigEndian(int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512tDigest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512tDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512tDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].<init>(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.MemoableResetException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    functionUses: 5
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.MemoableResetException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.MemoableResetException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.MemoableResetException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.MemoableResetException:-1,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.MemoableResetException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    functionUses: 5
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-2"
        BranchSideFuncs:
        - "copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.MemoableResetException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].copyIn(net.jsign.bouncycastle.crypto.digests.LongDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].getEncodedStateSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.LongDigest].populateState(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512tDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 22
    EdgeCount: 240
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "getCurveCoordinateSystem()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "getCurveCoordinateSystem()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "getCurveCoordinateSystem()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "getCurveCoordinateSystem()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 185
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 10
    BBCount: 51
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 133
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 42
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 133
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 42
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 133
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getFieldSize()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 42
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurveCoordinateSystem()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECPoint$F2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECPoint$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECPoint$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].<init>(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:45"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:52"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.BitField:47"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].getValue(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:71,1"
      Dst: "[net.jsign.poi.util.BitField].getRawValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getShortValue(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].getValue(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:89,1"
      Dst: "[net.jsign.poi.util.BitField].getValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getValue(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:71,1"
      Dst: "[net.jsign.poi.util.BitField].getRawValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getShortRawValue(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:117,1"
      Dst: "[net.jsign.poi.util.BitField].getRawValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getRawValue(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].isSet(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:133"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:132"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].isAllSet(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:148"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:147"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].setValue(int,int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setShortValue(short,short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 2
    argTypes:
    - "short"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].setValue(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:178,1"
      Dst: "[net.jsign.poi.util.BitField].setValue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setValue(int,int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clear(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clearShort(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].clear(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:207,1"
      Dst: "[net.jsign.poi.util.BitField].clear(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clear(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clearByte(byte)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].clear(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:222,1"
      Dst: "[net.jsign.poi.util.BitField].clear(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clear(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].set(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setShort(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].set(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:250,1"
      Dst: "[net.jsign.poi.util.BitField].set(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].set(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setByte(byte)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].set(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:264,1"
      Dst: "[net.jsign.poi.util.BitField].set(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].set(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setBoolean(int,boolean)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].set(int)"
    - "[net.jsign.poi.util.BitField].clear(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:280"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:281"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.BitField:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:280,1"
      Dst: "[net.jsign.poi.util.BitField].set(int)"
    - Src: "net.jsign.poi.util.BitField:281,1"
      Dst: "[net.jsign.poi.util.BitField].clear(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].set(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clear(int)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setShortBoolean(short,boolean)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].setShort(short)"
    - "[net.jsign.poi.util.BitField].clearShort(short)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:297"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:298"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.BitField:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:297,1"
      Dst: "[net.jsign.poi.util.BitField].setShort(short)"
    - Src: "net.jsign.poi.util.BitField:298,1"
      Dst: "[net.jsign.poi.util.BitField].clearShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].setShort(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].set(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:250,1"
      Dst: "[net.jsign.poi.util.BitField].set(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clearShort(short)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].clear(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:207,1"
      Dst: "[net.jsign.poi.util.BitField].clear(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].setByteBoolean(byte,boolean)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].setByte(byte)"
    - "[net.jsign.poi.util.BitField].clearByte(byte)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.BitField:314"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.BitField:315"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.BitField:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:314,1"
      Dst: "[net.jsign.poi.util.BitField].setByte(byte)"
    - Src: "net.jsign.poi.util.BitField:315,1"
      Dst: "[net.jsign.poi.util.BitField].clearByte(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.poi.util.BitField].setByte(byte)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].set(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:264,1"
      Dst: "[net.jsign.poi.util.BitField].set(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].clearByte(byte)"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.BitField].clear(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.BitField:222,1"
      Dst: "[net.jsign.poi.util.BitField].clear(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.BitField].getMask()"
    functionSourceFile: "net.jsign.poi.util.BitField"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].addCheckInputOverflow(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Math].addExact(int,int)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.Math].addExact(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$1)"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLengthExclude192(int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].deriveKey(int[][],byte[],byte[],byte[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulX(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].initMultiplier(long[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].encryptPlain(byte[],int,int,byte[],byte[],int,int[][],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].decryptPlain(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],int,int,byte[],int,byte[],byte[],byte[],long[][],int[][],byte[])"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    functionUses: 0
    ICount: 146
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$1)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLengthExclude192(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].deriveKey(int[][],byte[],byte[],byte[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulX(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].initMultiplier(long[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].encryptPlain(byte[],int,int,byte[],byte[],int,int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].decryptPlain(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],int,int,byte[],int,byte[],byte[],byte[],long[][],int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 26
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInput(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAndOutputAEAD(boolean,byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAgainstRequiredLength(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkOutputAgainstRequiredLength(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkInputAgainstRequiredLength(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkOutputAgainstRequiredLength(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$1)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLengthExclude192(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentExceptionExclude192(int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentExceptionExclude192(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentExceptionExclude192(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[][]"
    argCount: 2
    argTypes:
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    functionUses: 0
    ICount: 225
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].deriveKey(int[][],byte[],byte[],byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 6
    argTypes:
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulX(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].initMultiplier(long[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiplyP7(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].divideP(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(long[],long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiplyP7(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].divideP(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "byte[]"
    - "long[][]"
    - "byte[]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].getBytesProcessed()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].getBytesProcessed()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].getBytesProcessed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].encryptPlain(byte[],int,int,byte[],byte[],int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 8
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].decryptPlain(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],int,int,byte[],int,byte[],byte[],byte[],long[][],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 13
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "long[][]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].getLength(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].deriveKey(int[][],byte[],byte[],byte[],byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 6
    argTypes:
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 8
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "byte[]"
    - "long[][]"
    - "byte[]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].completeHash(byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].completePolyVal(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].getBytesProcessed()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].getBytesProcessed()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].encryptPlain(byte[],int,int,byte[],byte[],int,int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 8
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulH(byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].mulX(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].decryptPlain(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],int,int,byte[],int,byte[],byte[],byte[],long[][],int[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 13
    argTypes:
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "long[][]"
    - "int[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.Math].min(int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].xorBlock(byte[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher].updateHash(byte[],int,int,byte[],byte[],long[][])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].calculateTag(net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher$GCMSIVHasher,byte[],byte[],long[][],byte[],int[][],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].constantTimeAreEqual(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].initMultiplier(long[][],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[][]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiplyP7(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].divideP(long[],long[])"
    - "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(long[],long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].asLongs(byte[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].multiplyP7(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].divideP(long[],long[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.gcm.GCMUtil].xor(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].incrementCounter(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$100(byte[],int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].fillReverse(byte[],int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].access$200(byte[],byte[],long[][])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "long[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVPacketCipher].gHASH(byte[],byte[],long[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 2
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultProperties].<init>(int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].withBigIntegerCounters()"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.io.file.DeletingPathVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:45,1"
      Dst: "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:45,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].bigIntegerPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:414,1"
      Dst: "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:100,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.DeleteOption[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:70,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:70,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.LinkOption[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1305,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - "[java.lang.Object].clone()"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:84"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:82"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:89"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:85"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:83,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:84,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:85,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:87,1"
      Dst: "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:89,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].withLongCounters()"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.commons.io.file.DeletingPathVisitor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:54,1"
      Dst: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:54,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters].longPathCounters()"
    functionSourceFile: "net.jsign.commons.io.file.Counters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.io.file.Counters$PathCounters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters:432,1"
      Dst: "[net.jsign.commons.io.file.Counters$LongPathCounters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:100,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "net.jsign.commons.io.file.DeleteOption[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:70,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:70,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.nio.file.LinkOption[]"
    - "net.jsign.commons.io.file.DeleteOption[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - "[java.lang.Object].clone()"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:84"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:82"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:89"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:85"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:83,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:84,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:85,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:87,1"
      Dst: "[net.jsign.commons.io.file.StandardDeleteOption].overrideReadOnly(net.jsign.commons.io.file.DeleteOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:89,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].noFollowLinkOptionArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,java.lang.String[])"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.file.Counters$PathCounters"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:100,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].<init>(net.jsign.commons.io.file.Counters$PathCounters,net.jsign.commons.io.file.DeleteOption[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:110"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils$toString__181].bootstrap$()"
    - "[net.jsign.commons.io.file.PathUtils].getFileName(java.nio.file.Path,java.util.function.Function)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:937,1"
      Dst: "[net.jsign.commons.io.file.PathUtils$toString__181].bootstrap$()"
    - Src: "net.jsign.commons.io.file.PathUtils:937,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileName(java.nio.file.Path,java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 5
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:115"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:117"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:118"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:120"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:121"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:124"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:123"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:123"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:125"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:118,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:121,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:125,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:115"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:118"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:121"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:122,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].hashCode()"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - "[java.util.Arrays].hashCode(java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.util.Objects].hash(java.lang.Object[])"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:131,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:132,1"
      Dst: "[java.util.Arrays].hashCode(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:133,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:133,1"
      Dst: "[java.util.Objects].hash(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].hashCode()"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].hash(java.lang.Object[])"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:136,1"
      Dst: "[java.util.Objects].hash(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    - "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:139"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:139,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:140,1"
      Dst: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:142,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.file.Files].newDirectoryStream(java.nio.file.Path)"
    - "[java.nio.file.DirectoryStream].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.io.Closeable].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1077"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1076"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1078"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1075"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1076"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1077"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1076"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1076,1"
      Dst: "[java.nio.file.Files].newDirectoryStream(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1077,1"
      Dst: "[java.nio.file.DirectoryStream].iterator()"
    - Src: "net.jsign.commons.io.file.PathUtils:1077,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.file.PathUtils:1078,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.file.PathUtils:1078,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].updateDirCounter(java.nio.file.Path,java.io.IOException)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:141,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].updateDirCounter(java.nio.file.Path,java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].updateDirCounter(java.nio.file.Path,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$PathCounters].getDirectoryCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].increment()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:164,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getDirectoryCounter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:164,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].increment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:148"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:147,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:148,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.CountingPathVisitor:148"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.CountingPathVisitor:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:147,1"
      Dst: "[net.jsign.commons.io.file.PathFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:110"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].delete(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:153"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:155"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:161"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:156"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:162"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:153,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:155,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:157,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:159,1"
      Dst: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:162,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:165,1"
      Dst: "[java.nio.file.Files].delete(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:171,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.file.Path"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:110"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getFileNameString(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:110,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionSourceFile: "net.jsign.commons.io.file.PathUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.Path"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "boolean"
    - "java.nio.file.LinkOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].setDosReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.PathUtils].isPosix(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.file.PathUtils].setPosixReadOnlyFile(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].setPosixDeletePermissions(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.PathUtils:1594"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1599"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1598"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1601"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1605"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1604"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.PathUtils:1605"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.PathUtils:1612"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.PathUtils:1594,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setDosReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1600,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].getParent(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.PathUtils:1601,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isPosix(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1602,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.file.PathUtils:1608,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setPosixReadOnlyFile(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.PathUtils:1609,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setPosixDeletePermissions(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.CountingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - "[java.nio.file.attribute.BasicFileAttributes].size()"
    - "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getFileCounter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:174,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].increment()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.Counters$PathCounters].getByteCounter()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[java.nio.file.attribute.BasicFileAttributes].size()"
    - Src: "net.jsign.commons.io.file.CountingPathVisitor:175,1"
      Dst: "[net.jsign.commons.io.file.Counters$Counter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].postVisitDirectory(java.lang.Object,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:37,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    - "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:139"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:142"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:139,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].isEmptyDirectory(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:140,1"
      Dst: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:142,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].postVisitDirectory(java.nio.file.Path,java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].visitFile(java.lang.Object,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:37,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].visitFile(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    - "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - "[java.nio.file.Files].delete(java.nio.file.Path)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:153"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:155"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:162"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:161"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:156"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:159"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:158"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:162"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:153,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:155,1"
      Dst: "[java.nio.file.Files].exists(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:157,1"
      Dst: "[net.jsign.commons.io.file.PathUtils].setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:159,1"
      Dst: "[java.nio.file.Files].deleteIfExists(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:162,1"
      Dst: "[java.nio.file.Files].isSymbolicLink(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:165,1"
      Dst: "[java.nio.file.Files].delete(java.nio.file.Path)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:171,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].preVisitDirectory(java.lang.Object,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.DeletingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:37,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.DeletingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.file.DeletingPathVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.file.DeletingPathVisitor:148"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.file.DeletingPathVisitor:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:147,1"
      Dst: "[net.jsign.commons.io.file.CountingPathVisitor].preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - Src: "net.jsign.commons.io.file.DeletingPathVisitor:148,1"
      Dst: "[net.jsign.commons.io.file.DeletingPathVisitor].accept(java.nio.file.Path)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].isRsaOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generatePublicKeyParameter(java.security.interfaces.RSAPublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].engineGetKeyParameters()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].engineGetKeyParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPublicKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].engineGetKeyParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generatePrivateKeyParameter(java.security.interfaces.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].engineGetKeyParameters()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].engineGetKeyParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPublicExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentP()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getPrimeExponentQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateCrtKey].getCrtCoefficient()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].engineGetKeyParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAPrivateCrtKeyParameters].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateExponentFingerprint(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$2:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1].getType()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1].convert(char[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(char[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JceOpenSSLPKCS8DecryptorProviderBuilder$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].toByteArray(char[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Strings:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Strings:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$17:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].<init>(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].available()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].available()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].available()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 22
    ICount: 10
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.TeeInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.TeeInputStream:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 22
    ICount: 10
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.TeeInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.TeeInputStream:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(int)"
    - "[net.jsign.commons.io.output.QueueOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.output.NullOutputStream].write(int)"
    - "[java.io.InputStream].read()"
    - "[java.io.OutputStream].write(int)"
    functionUses: 29
    ICount: 7
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.TeeInputStream:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.TeeInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "write(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.OutputStream].write(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream:net.jsign.commons.io.output.AbstractByteArrayOutputStream:net.jsign.msi.MSIFile$1:net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[java.io.InputStream].close()"
    - "[java.io.OutputStream].close()"
    functionUses: 17
    ICount: 6
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.bouncycastle.util.io.TeeInputStream:-1,1"
      Dst: "[java.io.OutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.io.TeeInputStream].getOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.TeeInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest$DigestRefWrapper].<init>(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].restoreState(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getAlgorithmName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize(long)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte[],int,int)"
    functionUses: 14
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].reset()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getByteLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getByteLength(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getByteLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getByteLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].copy()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getEncodedState()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].getReference()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].toString()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].makeNative()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].destroy(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].update(long,byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].doFinal(long,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].reset(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getByteLength(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].encodeFullState(long,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].restoreFullState(long,byte[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].cryptoServiceProperties()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.Utils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.Digest"
    - "int"
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.KeccakDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKEDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest].getAlgorithmName()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest].getAlgorithmName()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA224NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA3NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512NativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKENativeDigest].getDigestSize()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.digests.KeccakDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512Digest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHA512tDigest:META-INF.versions.9.org.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.GOST3411Digest:net.jsign.bouncycastle.crypto.digests.KeccakDigest:net.jsign.bouncycastle.crypto.digests.MD2Digest:net.jsign.bouncycastle.crypto.digests.MD5Digest:net.jsign.bouncycastle.crypto.digests.RIPEMD160Digest:net.jsign.bouncycastle.crypto.digests.SHA1Digest:net.jsign.bouncycastle.crypto.digests.SHA224Digest:net.jsign.bouncycastle.crypto.digests.SHA256Digest:net.jsign.bouncycastle.crypto.digests.SHA384Digest:net.jsign.bouncycastle.crypto.digests.SHA512Digest:net.jsign.bouncycastle.crypto.digests.SHA512tDigest:net.jsign.bouncycastle.crypto.digests.SHAKEDigest:net.jsign.bouncycastle.crypto.digests.SM3Digest:net.jsign.bouncycastle.crypto.digests.TigerDigest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    functionUses: 18
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Digest].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.digests.Utils:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils$DefaultPropertiesWithPRF].<init>(int,int,java.lang.String,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer].<init>(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA384NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getAlgorithmIdentifier()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getOutputStream()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1].getDigest()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].getDigest()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].getDigest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].getDigest()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].digest()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:-1,1"
      Dst: "[java.security.MessageDigest].digest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DLSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attributes"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attributes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attributes:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attributes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attributes:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.Attributes"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cms.Attributes].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attributes].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attributes"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attributes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attributes:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attributes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attributes:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attributes].<init>(net.jsign.bouncycastle.asn1.ASN1Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].getAttributes()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attributes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attributes:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attributes:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attribute].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.cms.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 6
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.cms.Attribute:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cms.Attribute:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cms.Attribute:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.Attribute].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cms.Attributes].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cms.Attributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc7748.X448$F].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc7748.X448$F"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X448Field].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc7748.X448$F:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X448Field].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].dispose(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest].destroy(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].hasMoreElements()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2:META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.ASN1Sequence$2:net.jsign.bouncycastle.asn1.ASN1Set$2:net.jsign.bouncycastle.asn1.LazyConstructionEnumeration:net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].hasMoreElements()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 64
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
        - "getTagNo()"
        - "<init>()"
        - "getInstance(boolean)"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "hasMoreElements()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].getTagNo()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.GeneralName].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.tsp.Accuracy].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.tsp.MessageImprint,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.ASN1GeneralizedTime,net.jsign.bouncycastle.asn1.tsp.Accuracy,net.jsign.bouncycastle.asn1.ASN1Boolean,net.jsign.bouncycastle.asn1.ASN1Integer,net.jsign.bouncycastle.asn1.x509.GeneralName,net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    - "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    - "net.jsign.bouncycastle.asn1.ASN1Boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Integer"
    - "net.jsign.bouncycastle.asn1.x509.GeneralName"
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getVersion()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getMessageImprint()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.MessageImprint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getPolicy()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getSerialNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getAccuracy()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.tsp.Accuracy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getGenTime()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getOrdering()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getTsa()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.GeneralName"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].getExtensions()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.Extensions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.tsp.TSTInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionUses: 110
    ICount: 43
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "isTrue()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.tsp.TSTInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Boolean].isTrue()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Boolean"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1Boolean:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1Boolean:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DERTaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERTaggedObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 48
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERTaggedObject:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1TaggedObject].<init>(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:47,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:48,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:56,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:57,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>(java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.StringBuilderWriter:68"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:67,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].append(char)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.io.Writer"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:79,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].append(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.Writer"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:91,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].append(java.lang.CharSequence,int,int)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "java.io.Writer"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].flush()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].getBuilder()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char[],int,int)"
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.StringBuilderWriter:153"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:156"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:154,1"
      Dst: "[java.lang.StringBuilder].append(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].write(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.StringBuilderWriter:165"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:168"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:166,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.ClosedOutputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.ClosedOutputStream"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ClosedOutputStream:31,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ClosedOutputStream].flush()"
    functionSourceFile: "net.jsign.commons.io.output.ClosedOutputStream"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ClosedOutputStream:55,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.output.ClosedOutputStream"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ClosedOutputStream:68,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ClosedOutputStream].write(int)"
    functionSourceFile: "net.jsign.commons.io.output.ClosedOutputStream"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 18
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ClosedOutputStream:79,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].getAccessKey()"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].getSecretKey()"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].getSessionToken()"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].parse(java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.jca.AmazonCredentials"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonCredentials:58"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:61"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonCredentials:60"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonCredentials:63"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:57,1"
      Dst: "[java.lang.String].split(java.lang.String,int)"
    - Src: "net.jsign.jca.AmazonCredentials:59,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AmazonCredentials:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AmazonCredentials:59,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AmazonCredentials:59,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.AmazonCredentials:65,1"
      Dst: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].getDefault()"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.jca.AmazonCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AmazonCredentials].getenv(java.lang.String)"
    - "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[net.jsign.jca.AmazonIMDS2Client].<init>()"
    - "[net.jsign.jca.AmazonIMDS2Client].getCredentials()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonCredentials:77"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:78"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonCredentials:77"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonCredentials:77"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:91"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonCredentials:90"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonCredentials:79"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:82"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonCredentials:81"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonCredentials:83"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonCredentials:86"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonCredentials:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:77,1"
      Dst: "[net.jsign.jca.AmazonCredentials].getenv(java.lang.String)"
    - Src: "net.jsign.jca.AmazonCredentials:88,1"
      Dst: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.AmazonCredentials:91,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].<init>()"
    - Src: "net.jsign.jca.AmazonCredentials:91,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getCredentials()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.jca.AmazonCredentials].getenv(java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:96,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].<init>()"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -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.jsign.jca.AmazonIMDS2Client:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getCredentials()"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.jca.AmazonCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AmazonIMDS2Client].getInstanceProfileName()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[net.jsign.jca.AmazonIMDS2Client].getCredentials(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:76"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:79"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:75,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getInstanceProfileName()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:77,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:79,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getCredentials(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getInstanceProfileName()"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String,int)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].matches(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:58"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:61"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:60"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:62"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:63"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:62"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:62"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:65"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:57,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String,int)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:61,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:61,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:62,1"
      Dst: "[java.lang.String].matches(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String,int)"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].openConnection()"
    - "[java.net.URLConnection].setConnectTimeout(int)"
    - "[net.jsign.jca.AmazonIMDS2Client].getApiToken()"
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - "[java.net.HttpURLConnection].getResponseCode()"
    - "[net.jsign.jca.AmazonIMDS2Client].handleError(java.net.HttpURLConnection)"
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:139"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:141"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:143"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:141"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:144"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:134,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:134,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:134,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:134,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:135,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:136,1"
      Dst: "[java.net.URLConnection].setConnectTimeout(int)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:137,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getApiToken()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:137,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:138,1"
      Dst: "[java.net.HttpURLConnection].getResponseCode()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:144,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].handleError(java.net.HttpURLConnection)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:147,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:147,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getApiToken()"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.net.URL].openConnection()"
    - "[java.net.URLConnection].setConnectTimeout(int)"
    - "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - "[java.lang.String].valueOf(int)"
    - "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - "[java.net.HttpURLConnection].getResponseCode()"
    - "[java.net.UnknownServiceException].<init>(java.lang.String)"
    - "[net.jsign.jca.AmazonIMDS2Client].handleError(java.net.HttpURLConnection)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:109"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:110"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:109"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:109"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:111"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:113"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:112"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:113"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:120"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:123"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:102,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:103,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:104,1"
      Dst: "[java.net.URLConnection].setConnectTimeout(int)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:105,1"
      Dst: "[java.net.HttpURLConnection].setRequestMethod(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:106,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:106,1"
      Dst: "[java.net.URLConnection].setRequestProperty(java.lang.String,java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:108,1"
      Dst: "[java.net.HttpURLConnection].getResponseCode()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:110,1"
      Dst: "[java.net.UnknownServiceException].<init>(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:114,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].handleError(java.net.HttpURLConnection)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:117,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:119,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:119,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:121,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].handleError(java.net.HttpURLConnection)"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.IOException"
    argCount: 1
    argTypes:
    - "java.net.HttpURLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.net.HttpURLConnection].getResponseCode()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.net.HttpURLConnection].getResponseMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.URLConnection].getURL()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AmazonIMDS2Client:162"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AmazonIMDS2Client:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:161,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:161,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:161,1"
      Dst: "[java.net.HttpURLConnection].getResponseCode()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:161,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:162,1"
      Dst: "[java.net.HttpURLConnection].getResponseMessage()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:162,1"
      Dst: "[java.net.URLConnection].getURL()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:162,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getCredentials(java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.jca.AmazonCredentials"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:90,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:90,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AmazonIMDS2Client:90,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:91,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:93,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.jca.AmazonIMDS2Client:95,1"
      Dst: "[net.jsign.jca.AmazonCredentials].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonIMDS2Client"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonIMDS2Client:157,1"
      Dst: "[net.jsign.jca.AmazonIMDS2Client].getMetaData(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonReader:517,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].jsonToMaps(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AmazonCredentials].getenv(java.lang.String)"
    functionSourceFile: "net.jsign.jca.AmazonCredentials"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getenv(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.AmazonCredentials:96,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator].<init>(net.jsign.commons.io.function.IOIterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:42,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 70
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:47,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:47,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:47,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:47,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].<init>(net.jsign.commons.io.function.IOIterator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10:-1,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].<init>(net.jsign.commons.io.function.IOIterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].<init>(net.jsign.commons.io.function.IOIterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    functionUses: 86
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:52,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:52,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:52,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator$next__8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOSupplier"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].<init>(net.jsign.commons.io.function.IOIterator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator$next__8:-1,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].<init>(net.jsign.commons.io.function.IOIterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].<init>(net.jsign.commons.io.function.IOIterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator$next__8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator$next__8:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.function.UncheckedIOIterator].remove()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$remove__90].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - "[net.jsign.commons.io.function.Uncheck].run(net.jsign.commons.io.function.IORunnable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:57,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:57,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOIterator$remove__90].bootstrap$(net.jsign.commons.io.function.IOIterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOIterator:57,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].run(net.jsign.commons.io.function.IORunnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].run(net.jsign.commons.io.function.IORunnable)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IORunnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IORunnable].run()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:294,1"
      Dst: "[net.jsign.commons.io.function.IORunnable].run()"
    - Src: "net.jsign.commons.io.function.Uncheck:296,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "java.io.UncheckedIOException"
    argCount: 1
    argTypes:
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:339,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R2Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131R2Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$26:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.crypto.params.RSAKeyParameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.spec.RSAPrivateKeySpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.RSAPrivateKeySpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.spec.RSAPrivateKeySpec].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(java.security.interfaces.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.interfaces.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs:
        - "getAlgorithm()"
        - "equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getFormat()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].engineGetKeyParameters()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    functionUses: 3
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    functionUses: 2
    ICount: 9
    EdgeCount: 107
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.KeyUtil].getEncodedPrivateKeyInfo(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    - "[java.security.interfaces.RSAKey].getModulus()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPrivateExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPrivateExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPrivateExponent()"
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs:
        - "getModulus()"
        - "getPrivateExponent()"
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.security.interfaces.RSAPrivateKey].getPrivateExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getPrivateExponent()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].setBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].setBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].setBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].setBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].containsKey(java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].containsKey(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttribute(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getBagAttributeKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttributeKeys()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttributeKeys()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].getBagAttributeKeys()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].<init>()"
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.PKCS12BagAttributeCarrierImpl].<init>(java.util.Hashtable,java.util.Vector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.RSAKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.RSAKeyParameters].<init>(boolean,java.math.BigInteger,java.math.BigInteger,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].defaultWriteObject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].toString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.math.BigInteger].toString(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 4
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.math.BigInteger].toString(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getModulus()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil].generateKeyFingerprint(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].getEncoding(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.codec.EncoderException].<init>()"
    functionSourceFile: "net.jsign.commons.codec.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.EncoderException:40,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.EncoderException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.codec.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.EncoderException:51,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.codec.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.EncoderException:70,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.codec.EncoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.codec.EncoderException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.codec.EncoderException:84,1"
      Dst: "[java.lang.Exception].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UniversalTypes].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UniversalTypes"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.asn1.ASN1UniversalTypes:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1UniversalTypes].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1UniversalTypes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1UniversalType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 27
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters].<init>(java.math.BigInteger,java.math.BigInteger,net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters].getBeta()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters].getLambda()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters].getSplitParams()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.endo.GLVTypeBParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.endo.ScalarSplitParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.charset.CharsetDecoders].toCharsetDecoder(java.nio.charset.CharsetDecoder)"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetDecoders"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.script.Windows1252Extended].newDecoder()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.nio.charset.Charset].newDecoder()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.charset.CharsetDecoders:37"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.charset.CharsetDecoders:36"
        BranchSideFuncs:
        - "newDecoder()"
    Callsites:
    - Src: "net.jsign.commons.io.charset.CharsetDecoders:37,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.charset.CharsetDecoders:37,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.charset.CharsetDecoders].<init>()"
    functionSourceFile: "net.jsign.commons.io.charset.CharsetDecoders"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.charset.CharsetDecoders:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property].<init>(java.lang.String,java.lang.Class)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$300(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property].access$400(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$Property"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.AESCBCModePacketCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].<init>()"
    - "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].hasEnabledService(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].hasService(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isEnabled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isInstalled()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.DefaultNativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    functionUses: 6
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs:
        - "isSupported()"
        - "hasService(java.lang.String)"
        - "isInstalled()"
        - "isEnabled()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isSupported()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isInstalled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].isEnabled()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeServices].hasService(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeCBCPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutputWithBlockSize_16(byte[],int,int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutputWithBlockSize_16(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutputWithBlockSize_16(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutput(byte[],int,int,byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutput(byte[],int,int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkBoundsInputAndOutput(byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKeyLength()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLength(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PacketCipherChecks].checkKeyLenIllegalArgumentException(int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PacketCipherChecks:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].createS(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].generateWorkingKey(boolean,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[][]"
    argCount: 2
    argTypes:
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    functionUses: 0
    ICount: 225
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].shift(int,int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].subWord(int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].inv_mcol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.util.Bytes].xorTo(int,byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Bytes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Bytes:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Bytes:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].processBlock(boolean,int[][],byte[],byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "int[][]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].encryptBlock(int[][],byte[],byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESPacketCipher].decryptBlock(int[][],byte[],byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 7
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clear(int[][])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(int[],int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].fill(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.AESCBCPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreUtils].<init>()"
    functionSourceFile: "net.jsign.KeyStoreUtils"
    linkageType: null
    functionLinenumber: -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.jsign.KeyStoreUtils:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreUtils].load(java.io.File,java.lang.String,java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.KeyStore"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].<init>()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].validate()"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreUtils:48,1"
      Dst: "[net.jsign.KeyStoreBuilder].<init>()"
    - Src: "net.jsign.KeyStoreUtils:48,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    - Src: "net.jsign.KeyStoreUtils:48,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    - Src: "net.jsign.KeyStoreUtils:48,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - Src: "net.jsign.KeyStoreUtils:49,1"
      Dst: "[net.jsign.KeyStoreBuilder].validate()"
    - Src: "net.jsign.KeyStoreUtils:50,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreUtils:50,1"
      Dst: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].<init>()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.io.File)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getPath()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[java.io.File].getPath()"
    - Src: "net.jsign.KeyStoreBuilder:75,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - "[net.jsign.KeyStoreType].values()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:122"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreType].values()"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].validate()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.KeyStoreBuilder].storetype()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreType].of(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:133"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:140"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreType].of(java.io.File)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.KeyStore"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].name()"
    - "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.Provider].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:513"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:513"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:514"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:517"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:520"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:520"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:519"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:523"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:529"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:530"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:533"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:531"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - Src: "net.jsign.KeyStoreType:517,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:524,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:528,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "net.jsign.KeyStoreType:530,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:532,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 7
    BBCount: 30
  - functionName: "[net.jsign.KeyStoreUtils].load(java.lang.String,java.lang.String,java.lang.String,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.security.KeyStore"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].<init>()"
    - "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].validate()"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreUtils:65,1"
      Dst: "[net.jsign.KeyStoreBuilder].<init>()"
    - Src: "net.jsign.KeyStoreUtils:65,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    - Src: "net.jsign.KeyStoreUtils:65,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    - Src: "net.jsign.KeyStoreUtils:65,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    - Src: "net.jsign.KeyStoreUtils:66,1"
      Dst: "[net.jsign.KeyStoreBuilder].validate()"
    - Src: "net.jsign.KeyStoreUtils:67,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreUtils:67,1"
      Dst: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].<init>()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getParentFile()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:56,1"
      Dst: "[java.io.File].getParentFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storetype(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase()"
    - "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - "[net.jsign.KeyStoreType].values()"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:122"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "net.jsign.KeyStoreBuilder:122,1"
      Dst: "[net.jsign.KeyStoreType].valueOf(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreType].values()"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.KeyStoreBuilder:124,1"
      Dst: "[net.jsign.KeyStoreBuilder$lambda_storetype_0__50].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[net.jsign.KeyStoreBuilder$name__51].bootstrap$()"
    - Src: "net.jsign.KeyStoreBuilder:125,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Collectors].joining(java.lang.CharSequence)"
    - Src: "net.jsign.KeyStoreBuilder:126,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreBuilder].storepass(java.lang.String)"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.KeyStoreBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].validate()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storetype()"
    - "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:252"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:256"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:260"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:253,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreBuilder].storetype()"
    - Src: "net.jsign.KeyStoreBuilder:260,1"
      Dst: "[net.jsign.KeyStoreType].validate(net.jsign.KeyStoreBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.KeyStoreBuilder].storetype()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.KeyStoreType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[net.jsign.KeyStoreType].of(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreBuilder:133"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:134"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:138"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreBuilder:140"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreBuilder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:139,1"
      Dst: "[net.jsign.KeyStoreType].of(java.io.File)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreBuilder:141,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.KeyStoreType].getKeystore(net.jsign.KeyStoreBuilder,java.security.Provider)"
    functionSourceFile: "net.jsign.KeyStoreType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.KeyStore"
    argCount: 2
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].name()"
    - "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - "[java.security.KeyStore].getInstance(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.Provider].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[java.lang.String].toCharArray()"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType:513"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:513"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:514"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:517"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:516"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:520"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:520"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:519"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:524"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:523"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:523"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:529"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:528"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:527"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:530"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:533"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType:528"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType:532"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType:531"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.KeyStoreType:515,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String,java.security.Provider)"
    - Src: "net.jsign.KeyStoreType:517,1"
      Dst: "[java.security.KeyStore].getInstance(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.Provider].getName()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType:520,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[net.jsign.KeyStoreBuilder].createFile(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:523,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.KeyStoreType:524,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType:528,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.KeyStoreType:529,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "net.jsign.KeyStoreType:530,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "net.jsign.KeyStoreType:532,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 7
    BBCount: 30
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].cloneCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].createDefaultMultiplier()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECMultiplier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.WTauNafMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.WTauNafMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getInfinity()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].isKoblitz()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getM()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].isTrinomial()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getK1()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getK2()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].getK3()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve,int,long[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].copy64(long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve].access$000()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$F2m"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$F2m:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$F2m].<init>(int,int,int,int,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$24:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.sec.SECNamedCurves$15:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].<init>(net.jsign.json-io.util.io.JsonReader,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonReader"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - "[net.jsign.json-io.util.io.JsonReader].getMissingFieldHandler()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:75,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].<init>(net.jsign.json-io.util.io.JsonReader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:77,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getMissingFieldHandler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].traverseFields(java.util.Deque,net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[net.jsign.json-io.util.io.ObjectResolver].assignField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.reflect.Field,java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].handleMissingField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.Object,java.lang.String)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:99"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:102"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:103"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:88"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:93"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:90,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:90,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:91,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:95,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:96,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:97,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:98,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:101,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].assignField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.reflect.Field,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:105,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].handleMissingField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.Object,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getField(java.lang.Class,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Field"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:131,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:131,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].assignField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.reflect.Field,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.reflect.Field"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].isPrimitive()"
    - "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Field].getGenericType()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].isArray()"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[java.lang.Long].longValue()"
    - "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[java.lang.String].trim()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 158
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:134"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:154"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:136"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:140"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:155"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:157"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:163"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:172"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:179"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:188"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:182"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:185"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:182"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:188"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:192"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:212"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:250"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:249"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:217"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:232"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:234"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:250"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:258"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:252"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:255"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:254"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:271"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:130,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:133,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:136,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:138,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:139,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:141,1"
      Dst: "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:157,1"
      Dst: "[java.lang.reflect.Field].getGenericType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:159,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:159,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:165,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:167,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:167,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:174,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:176,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:179,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.reflect.Field].getDeclaringClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:188,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:201,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:206,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:209,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:215,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:219,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:234,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:234,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:240,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:250,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:258,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:275,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 24
    BBCount: 46
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Byte].parseByte(java.lang.String)"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.Number].byteValue()"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.Number].doubleValue()"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    - "[java.lang.Float].valueOf(float)"
    - "[java.lang.Number].floatValue()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Number].intValue()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Number].longValue()"
    - "[java.lang.Short].parseShort(java.lang.String)"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Number].shortValue()"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 232
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:854"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:857"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:861"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:860"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:863"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:867"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:866"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:878"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:877"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:867"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:874"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:873"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:876"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:880"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:879"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:902"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:880"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:884"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:883"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:884"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:897"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:896"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:886"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:890"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:889"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:891"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:895"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:894"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:897"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:905"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:904"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:916"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:915"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:908"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:912"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:911"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:914"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:929"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:928"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:921"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:925"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:924"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:927"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:931"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:930"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:942"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:941"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:931"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:934"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:944"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:943"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:955"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:954"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:944"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:947"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:951"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:950"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:957"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:968"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:967"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:957"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:960"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:964"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:963"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:968"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:979"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:978"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:974"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:973"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:974"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:979"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:983"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:982"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:983"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:990"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:854"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:856,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:857,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].parseByte(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:882,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:886,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:895,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:914,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:927,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:940,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:953,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].parseShort(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:966,1"
      Dst: "[java.lang.Number].shortValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:972,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:981,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:985,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:990,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:994,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 96
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.Class].getDeclaredFields()"
    - "[java.lang.reflect.Field].getModifiers()"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].getName()"
    - "[java.lang.reflect.Field].setAccessible(boolean)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Class].getSuperclass()"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:142"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:158"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:160"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:170"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:176"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:156"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:150"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:154"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:141,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:147,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:154,1"
      Dst: "[java.lang.Class].getDeclaredFields()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:158,1"
      Dst: "[java.lang.reflect.Field].getModifiers()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:160,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:167,1"
      Dst: "[java.lang.reflect.Field].setAccessible(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:170,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:172,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:187,1"
      Dst: "[java.lang.Class].getSuperclass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 21
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Deque].removeFirst()"
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapToKeysItems(net.jsign.json-io.util.io.JsonObject)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[java.lang.Class].getName()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].toArray()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].getTypeParameters()"
    - "[java.lang.reflect.Field].getGenericType()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 158
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:779"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:880"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:789"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:792"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:806"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:857"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:808"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:834"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:816"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:820"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:830"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:811"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:812"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:835"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:842"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:838"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:837"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:836"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:843"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:847"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:849"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:848"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:858"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:871"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:862"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:860"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:774"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:775"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:771,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:772,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:776,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:781,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:783,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:790,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:792,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:795,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:797,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapToKeysItems(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:800,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:801,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:822,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:823,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:824,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:825,1"
      Dst: "[java.util.List].toArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:825,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:846,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:862,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:862,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:864,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:865,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.Class].getTypeParameters()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.reflect.Field].getGenericType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:872,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:774,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 46
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:933"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:937"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:933,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:910"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:910"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:909"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:912"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:912"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:910,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:915,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:917,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Deque"
    - "java.lang.Object[]"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Deque].add(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:888"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:889"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:888"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:891"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:899"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:892,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:893,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:895,1"
      Dst: "[java.util.Deque].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:37,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 651
    ICount: 33
    EdgeCount: 264
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:314"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:319"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:311,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:314,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:322,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:323,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].getReader()"
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:672"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:692"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:737"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:736"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:695"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:700"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:732"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:731"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:713"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:712"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:713"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:720"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:719"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:740"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:744"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:747"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:752"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:763"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:674,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:677,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:695,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:709,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:723,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:732,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:745,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReader()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:764,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:190,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:338,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:63,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:195,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$UnresolvedReference:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:113,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.Class].isEnum()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:286"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:288"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:289"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:291"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:286,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:287,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:288,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:291,1"
      Dst: "[java.lang.Class].isEnum()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:292,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:380"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:386,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:390,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:390,1"
      Dst: "[java.lang.Class].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].handleMissingField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:297"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:309"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:308"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:313"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:312"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:313"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:318"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:317"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:318"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:348"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:347"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:323"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:331"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:330"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:331"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:342"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:341"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:334"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:338"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:337"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:355"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:299,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:309,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:313,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:313,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:321,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:325,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:331,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:333,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:334,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:334,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:336,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:354,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:354,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:360,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 21
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Resolver$Missingfields].<init>(java.lang.Object,java.lang.String,java.lang.Object)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:370,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$Missingfields].<init>(java.lang.Object,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:370,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$Missingfields].<init>(java.lang.Object,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$Missingfields"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$Missingfields:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getType()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:111"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:112"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:113"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:111"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:114"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].assignField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.reflect.Field,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.reflect.Field"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].isPrimitive()"
    - "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - "[java.lang.reflect.Field].getGenericType()"
    - "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[java.lang.reflect.Field].getDeclaringClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Field].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Class].isArray()"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[java.lang.Long].longValue()"
    - "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[java.lang.String].trim()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 158
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:134"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:154"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:136"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:138"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:141"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:140"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:155"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:157"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:163"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:167"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:166"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:165"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:172"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:171"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:172"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:179"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:178"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:179"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:188"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:187"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:182"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:185"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:184"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:182"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:188"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:212"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:211"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:192"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:206"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:205"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:195"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:201"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:212"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:250"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:249"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:217"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:232"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:231"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:221"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:227"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:226"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:234"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:241"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:277"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:250"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:258"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:257"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:252"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:255"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:254"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:258"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:263"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:271"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:130,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:133,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:136,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:138,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].isBasicWrapperType(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:139,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:141,1"
      Dst: "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:157,1"
      Dst: "[java.lang.reflect.Field].getGenericType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:159,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].getDeepDeclaredFields(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:159,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:165,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:167,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:167,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:174,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:176,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:179,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.reflect.Field].getDeclaringClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.reflect.Field].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:182,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:188,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:201,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:206,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:209,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:215,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:219,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:227,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:234,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:234,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:240,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:250,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:258,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:270,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:275,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 24
    BBCount: 46
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].handleMissingField(java.util.Deque,net.jsign.json-io.util.io.JsonObject,java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[net.jsign.json-io.util.io.JsonObject].getType()"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:297"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:305"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:309"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:308"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:313"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:312"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:313"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:318"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:317"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:318"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:348"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:347"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:323"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:331"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:330"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:331"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:342"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:341"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:334"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:338"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:337"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:355"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:299,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:309,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:313,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:313,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:321,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:325,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:331,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:333,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:334,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:334,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:336,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:354,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:354,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:353,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:360,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 21
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].storeMissingField(java.lang.Object,java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Resolver$Missingfields].<init>(java.lang.Object,java.lang.String,java.lang.Object)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:370,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$Missingfields].<init>(java.lang.Object,java.lang.String,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:370,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].safeToString(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:380"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:386,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:390,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:390,1"
      Dst: "[java.lang.Class].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].traverseCollection(java.util.Deque,net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.Set].of()"
    - "[java.util.List].of()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[java.lang.Long].longValue()"
    - "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    - "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.ObjectResolver].reconciliateCollection(net.jsign.json-io.util.io.JsonObject,java.util.Collection)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    functionUses: 0
    ICount: 125
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:408"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:407"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:417"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:409"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:410"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:410"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:415"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:414"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:420"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:424"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:423"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:424"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:424"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:423"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:424"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:424"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:423"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:425"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:425"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:424"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:432"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:435"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:436"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:439"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:440"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:443"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:444"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:445"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:444"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:445"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:444"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:445"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:444"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:446"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:449"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:448"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:451"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:460"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:464"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:482"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:468"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:473"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:475"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:485"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:488"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:429"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:425"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:406,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:409,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:410,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:411,1"
      Dst: "[java.util.Set].of()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:413,1"
      Dst: "[java.util.List].of()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:419,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:421,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:425,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:434,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:438,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:440,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:449,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:451,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:451,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:454,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:455,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:457,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapsToObjects(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:462,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:466,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:474,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:474,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:485,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:485,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:496,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].reconciliateCollection(net.jsign.json-io.util.io.JsonObject,java.util.Collection)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:499,1"
      Dst: "[java.util.HashMap].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 24
    BBCount: 45
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:338,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:37,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].getReader()"
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:672"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:692"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:737"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:736"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:695"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:700"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:732"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:731"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:713"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:712"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:713"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:720"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:719"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:740"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:744"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:747"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:752"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:763"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:674,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:677,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:695,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:709,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:723,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:732,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:745,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReader()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:764,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 651
    ICount: 33
    EdgeCount: 264
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:314"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:319"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:311,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:314,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:322,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:323,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:195,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$UnresolvedReference:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getTargetClass()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:113,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.Class].isEnum()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:286"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:288"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:289"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:291"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:286,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:287,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:288,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:291,1"
      Dst: "[java.lang.Class].isEnum()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:292,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].reconciliateCollection(net.jsign.json-io.util.io.JsonObject,java.util.Collection)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.Collection].stream()"
    - "[net.jsign.json-io.util.io.ObjectResolver$lambda_0__91].bootstrap$()"
    - "[java.util.stream.Stream].noneMatch(java.util.function.Predicate)"
    - "[java.util.Collection].toArray()"
    - "[java.util.List].of(java.lang.Object[])"
    - "[java.util.Set].of(java.lang.Object[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:505"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:504"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:503"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:505"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:504"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:503"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:506"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:507"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:509"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:508"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:509"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:508"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:509"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:510"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:511"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:521"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:513"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:518"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:522"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:527"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:505,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:511,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver$lambda_0__91].bootstrap$()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[java.util.stream.Stream].noneMatch(java.util.function.Predicate)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:515,1"
      Dst: "[java.util.Collection].toArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:515,1"
      Dst: "[java.util.List].of(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:524,1"
      Dst: "[java.util.Set].of(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].reconciliateCollection(net.jsign.json-io.util.io.JsonObject,java.util.Collection)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.Collection].stream()"
    - "[net.jsign.json-io.util.io.ObjectResolver$lambda_0__91].bootstrap$()"
    - "[java.util.stream.Stream].noneMatch(java.util.function.Predicate)"
    - "[java.util.Collection].toArray()"
    - "[java.util.List].of(java.lang.Object[])"
    - "[java.util.Set].of(java.lang.Object[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:505"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:504"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:503"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:505"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:504"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:503"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:506"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:507"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:509"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:508"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:508"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:509"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:508"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:509"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:510"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:511"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:521"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:513"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:518"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:522"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:527"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:505,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:511,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver$lambda_0__91].bootstrap$()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:513,1"
      Dst: "[java.util.stream.Stream].noneMatch(java.util.function.Predicate)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:515,1"
      Dst: "[java.util.Collection].toArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:515,1"
      Dst: "[java.util.List].of(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:524,1"
      Dst: "[java.util.Set].of(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].traverseArray(java.util.Deque,net.jsign.json-io.util.io.JsonObject)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Deque"
    - "net.jsign.json-io.util.io.JsonObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - "[net.jsign.json-io.util.io.JsonObject].getComponentType()"
    - "[net.jsign.json-io.util.io.JsonObject].moveBytesToMate()"
    - "[net.jsign.json-io.util.io.JsonObject].clearArray()"
    - "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.lang.reflect.Array].set(java.lang.Object,int,java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - "[java.lang.Long].longValue()"
    - "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 107
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:544"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:548"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:551"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:555"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:556"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:562"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:572"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:575"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:576"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:580"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:581"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:584"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:585"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:588"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:589"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:618"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:591"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:612"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:595"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:600"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:604"
      Branch Sides: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:619"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:647"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:624"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:637"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:627"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:632"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:640"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:562"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:648"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:653"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:567"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:543,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:549,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getComponentType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:558,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].moveBytesToMate()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:559,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].clearArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:563,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:565,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:574,1"
      Dst: "[java.lang.reflect.Array].set(java.lang.Object,int,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:578,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:578,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:581,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:587,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:589,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:589,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:602,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:606,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:614,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:616,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:622,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:626,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReferencedObj(java.lang.Long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:633,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:633,1"
      Dst: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:633,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:640,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:648,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:648,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 18
    BBCount: 40
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getLength()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:243"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:242,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getLenientSize()"
    - Src: "net.jsign.json-io.util.io.JsonObject:245,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.JsonObject:247,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getComponentType()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:270,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.JsonObject:270,1"
      Dst: "[java.lang.Class].getComponentType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].moveBytesToMate()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.lang.Number].byteValue()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:279"
      Branch Sides: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:276,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.JsonObject:281,1"
      Dst: "[java.lang.Number].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonObject].clearArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].remove(java.lang.Object)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:341,1"
      Dst: "[java.util.HashMap].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:273"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:273,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:237,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:37,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].getReader()"
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:672"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:692"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:737"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:736"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:695"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:700"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:732"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:731"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:713"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:712"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:713"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:720"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:719"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:740"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:744"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:747"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:752"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:763"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:674,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:677,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:695,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:709,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:723,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:732,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:745,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReader()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:764,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].convert(java.lang.Class,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Byte].parseByte(java.lang.String)"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.Number].byteValue()"
    - "[java.lang.Byte].byteValue()"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.Number].doubleValue()"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    - "[java.lang.Float].valueOf(float)"
    - "[java.lang.Number].floatValue()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Number].intValue()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Number].longValue()"
    - "[java.lang.Short].parseShort(java.lang.String)"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Number].shortValue()"
    - "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - "[java.lang.Long].longValue()"
    - "[java.util.Date].<init>(long)"
    - "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 232
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:852"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:864"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:854"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:857"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:861"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:860"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:863"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:863"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:862"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:867"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:866"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:878"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:877"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:867"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:874"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:873"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:876"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:876"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:875"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:880"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:879"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:878"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:902"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:880"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:884"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:883"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:884"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:897"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:896"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:886"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:890"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:889"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:891"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:895"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:894"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:897"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:905"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:904"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:903"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:916"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:915"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:908"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:912"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:911"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:914"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:914"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:916"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:929"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:928"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:918"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:921"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:925"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:924"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:927"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:927"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:926"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:931"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:930"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:942"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:941"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:931"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:934"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:938"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:940"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:940"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:939"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:944"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:943"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:942"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:955"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:954"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:944"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:947"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:951"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:950"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:953"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:953"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:952"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:957"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:956"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:955"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:968"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:967"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:957"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:960"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:964"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:963"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:966"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:966"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:965"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:968"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:979"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:978"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:970"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:974"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:973"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:974"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:979"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:983"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:982"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:983"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:990"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:854"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:853"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:856,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].removeLeadingAndTrailingQuotes(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:857,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].parseBoolean(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:861,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].parseByte(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:874,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Number].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:876,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:882,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:886,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:895,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:912,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:914,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:925,1"
      Dst: "[java.lang.Float].valueOf(float)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:927,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:938,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:940,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:951,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:953,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].parseShort(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:964,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:966,1"
      Dst: "[java.lang.Number].shortValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:972,1"
      Dst: "[net.jsign.json-io.util.io.Readers$DateReader].parseDate(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:976,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:981,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigIntegerFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:985,1"
      Dst: "[net.jsign.json-io.util.io.Readers].bigDecimalFrom(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:990,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:991,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:994,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 96
  - functionName: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.Provider].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ObjectMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesPermission].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[net.jsign.commons.io.CloseableURLConnection].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.DeletingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.AccumulatorPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[net.jsign.log4j.MarkerManager$Log4jMarker].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS10CertificationRequest].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.io.pem.PemHeader].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.Level].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.PrimeField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier$OidHandle].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.GarbageFreeSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.MutableThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerId].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.ByteOrderMark].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECCurve].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].equals(java.lang.Object)"
    - "[net.jsign.log4j.ThreadContext$EmptyThreadContextStack].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPrivateCrtKey].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CopyDirectoryVisitor].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.ParameterizedMessage].equals(java.lang.Object)"
    - "[net.jsign.poi.hpsf.ClassID].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$LongCounter].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Fingerprint].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.StringFormattedMessage].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Object].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.cert.X509CRLHolder].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.ECDomainParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.LoaderUtil$UrlResource].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.SimpleBigDecimal].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.DefaultThreadContextStack].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfigurationPermission].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CleaningPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.Counters$BigIntegerCounter].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.field.GenericPolynomialExtensionField].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].equals(java.lang.Object)"
    - "[net.jsign.commons.io.file.CountingPathVisitor].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.params.DSAParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.field.GF2Polynomial].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].equals(java.lang.Object)"
    - "[net.jsign.poi.poifs.filesystem.POIFSDocumentPath].equals(java.lang.Object)"
    - "[net.jsign.log4j.util.SortedArrayStringMap].equals(java.lang.Object)"
    - "[net.jsign.log4j.spi.CopyOnWriteSortedArrayThreadContextMap].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DHParameters].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.CompositePrivateKey].equals(java.lang.Object)"
    - "[net.jsign.log4j.message.SimpleMessage].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Type].equals(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 651
    ICount: 33
    EdgeCount: 264
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.JsonObject:309"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:313"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:314"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:319"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "net.jsign.json-io.util.io.JsonObject:320"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:325"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:327"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.JsonObject:326"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.JsonObject:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:311,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:314,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:322,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "net.jsign.json-io.util.io.JsonObject:323,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.JsonObject:326,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.json-io.util.io.JsonObject].getReferenceId()"
    functionSourceFile: "net.jsign.json-io.util.io.JsonObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonObject:195,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$UnresolvedReference:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.MetaUtils].isLogicalPrimitive(java.lang.Class)"
    functionSourceFile: "net.jsign.json-io.util.io.MetaUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isPrimitive()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.Class].isEnum()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:286"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:287"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:288"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:289"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:290"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:291"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:286"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.MetaUtils:292"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.MetaUtils:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.MetaUtils:286,1"
      Dst: "[java.lang.Class].isPrimitive()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:287,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:288,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.MetaUtils:291,1"
      Dst: "[java.lang.Class].isEnum()"
    - Src: "net.jsign.json-io.util.io.MetaUtils:292,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].readIfMatching(java.lang.Object,java.lang.Class,java.util.Deque)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Object].getClass()"
    - "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - "[java.lang.Class].getName()"
    - "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - "[net.jsign.json-io.util.io.Resolver].getReader()"
    - "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:672"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:676"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:677"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:682"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:681"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:683"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:689"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:688"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:692"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:737"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:736"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:695"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:700"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:699"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:700"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:732"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:731"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:706"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:713"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:712"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:713"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:720"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:719"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:740"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:744"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:747"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:751"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:752"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:757"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:758"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:763"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:674,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:677,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].notCustom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:695,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].isReference()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:709,1"
      Dst: "[net.jsign.json-io.util.io.MetaUtils].classForName(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:723,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].createJavaObjectInstance(java.lang.Class,net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:727,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:732,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:745,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getCustomReader(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:754,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].setType(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].getReader()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader].getArgs()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:760,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReaderEx].read(java.lang.Object,java.util.Deque,java.util.Map)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:764,1"
      Dst: "[net.jsign.json-io.util.io.JsonReader$JsonClassReader].read(java.lang.Object,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].markUntypedObjects(java.lang.reflect.Type,java.lang.Object,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Type"
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    - "[java.util.Deque].removeFirst()"
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[net.jsign.json-io.util.io.Resolver].convertMapToKeysItems(net.jsign.json-io.util.io.JsonObject)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    - "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - "[java.lang.Class].getName()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].toArray()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.reflect.Field].getType()"
    - "[java.lang.Class].getTypeParameters()"
    - "[java.lang.reflect.Field].getGenericType()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 158
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:779"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:880"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:785"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:789"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:792"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:805"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:795"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:799"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:806"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:857"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:808"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:834"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:816"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:820"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:830"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:811"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:812"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:835"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:842"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:838"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:837"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:836"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:843"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:847"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:849"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:848"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:858"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:770"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:865"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:871"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:870"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:862"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:860"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:859"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:774"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:775"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:771,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:772,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:776,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:781,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:783,1"
      Dst: "[java.lang.reflect.ParameterizedType].getActualTypeArguments()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:790,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:792,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:795,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:797,1"
      Dst: "[net.jsign.json-io.util.io.Resolver].convertMapToKeysItems(net.jsign.json-io.util.io.JsonObject)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:800,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:801,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:822,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].<init>()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:823,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:824,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:825,1"
      Dst: "[java.util.List].toArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:825,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:838,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:846,1"
      Dst: "[net.jsign.json-io.util.io.JsonObject].getArray()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:862,1"
      Dst: "[java.util.LinkedHashMap].entrySet()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:862,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:864,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:865,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.Class].getTypeParameters()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:870,1"
      Dst: "[java.lang.reflect.Field].getGenericType()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:872,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:774,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 26
    BBCount: 46
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].getTemplateTraverseWorkItem(java.util.Deque,java.lang.Object[],java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Deque"
    - "java.lang.Object[]"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.util.Deque].add(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:888"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:889"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:888"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:891"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:893"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:899"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:898"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:892,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:893,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:895,1"
      Dst: "[java.util.Deque].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].stampTypeOnJsonObject(java.lang.Object,java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:910"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:910"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:909"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:912"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:912"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:913"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:915"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:919"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:910,1"
      Dst: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:915,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "net.jsign.json-io.util.io.ObjectResolver:917,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].getRawType(java.lang.reflect.Type)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.ParameterizedType].getRawType()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:929"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:937"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:933"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:937"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.ObjectResolver:933,1"
      Dst: "[java.lang.reflect.ParameterizedType].getRawType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.json-io.util.io.ObjectResolver].lambda$0(java.lang.Object)"
    functionSourceFile: "net.jsign.json-io.util.io.ObjectResolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:513"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:512"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.ObjectResolver:513"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.ObjectResolver:512"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "java.util.concurrent.atomic.AtomicBoolean"
    - "java.util.concurrent.atomic.AtomicReference"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].getPause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy(long)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy(long)"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 4
    ICount: 35
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
        - "getEntropy()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-2"
        BranchSideFuncs:
        - "getEntropy(long)"
        - "getEntropy()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.IncrementalEntropySource].getEntropy(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer].getPause()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.EntropyGatherer:-1,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Properties].getPropertyValue(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.Properties"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Properties$2].run()"
    - "[net.jsign.bouncycastle.util.Properties$1].run()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.ThreadLocal].get()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.util.Properties:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Properties:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(java.lang.String)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$1].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.util.Properties:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties$2].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].<init>(java.io.InputStream,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].<init>(java.io.InputStream,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].getRemaining()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.commons.io.input.QueueInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read()"
    - "[net.jsign.commons.io.input.BoundedInputStream].read()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read()"
    - "[net.jsign.commons.io.input.ProxyInputStream].read()"
    - "[net.jsign.commons.io.input.BOMInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read()"
    - "[net.jsign.commons.io.input.ReaderInputStream].read()"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read()"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.io.InputStream].read()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 29
    ICount: 27
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read()"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    - "[java.lang.Math].min(int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 33
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "setParentEofDetect(boolean)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "setParentEofDetect(boolean)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].readAllIntoByteArray(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 4
    ICount: 14
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].toByteArray()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].getLimit()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.LimitedInputStream].setParentEofDetect(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.io.Streams].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.io.Streams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedBitStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DefiniteLengthInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[],int,int)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.IndefiniteLengthInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.ConstructedOctetStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].read(byte[],int,int)"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream:net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream:net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream:net.jsign.commons.io.input.ClosedInputStream:net.jsign.commons.io.output.NullOutputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 4
    ICount: 14
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.util.io.Streams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.io.Streams:-2"
        BranchSideFuncs:
        - "read(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.io.Streams:-1,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo].getPreComp()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo].setPreComp(net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.WTauNafPreCompInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException:-1,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.operator.jcajce.OperatorHelper$OpCertificateException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$EmptyEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList$RevokedCertificatesEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[net.jsign.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyConstructionEnumeration].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$2].nextElement()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 1
    ICount: 22
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>()"
        - "getInstance(java.lang.Object)"
        - "getObjects()"
        - "nextElement()"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1BitString)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1BitString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier,byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERBitString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].parsePublicKey()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BitString].getOctets()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getPublicKeyData()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1BitString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed448].<init>()"
    functionSourceFile: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed448"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.15.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$Ed448:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].bootstrap$()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Predicate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13:-1,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].<init>()"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil$lambda_new_0__13].test(java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.ProviderUtil].lambda$new$0(net.jsign.log4j.spi.Provider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil$lambda_new_0__13:-1,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].lambda$new$0(net.jsign.log4j.spi.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.ProviderUtil].lambda$new$0(net.jsign.log4j.spi.Provider)"
    functionSourceFile: "net.jsign.log4j.util.ProviderUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.spi.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.spi.Provider].getVersions()"
    - "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[net.jsign.log4j.spi.Provider].getVersions()"
    - Src: "net.jsign.log4j.util.ProviderUtil:71,1"
      Dst: "[net.jsign.log4j.util.ProviderUtil].validVersion(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4].get(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySource"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$4:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$100()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.EntropyDaemon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].createBaseEntropySourceProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].<init>(net.jsign.bouncycastle.crypto.EntropyDaemon,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.crypto.EntropyDaemon"
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource,net.jsign.bouncycastle.crypto.EntropyDaemon,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].highestOneBit(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].highestOneBit(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].highestOneBit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].lowestOneBit(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].lowestOneBit(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].lowestOneBit(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].numberOfLeadingZeros(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].numberOfLeadingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].numberOfLeadingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].numberOfTrailingZeros(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].numberOfTrailingZeros(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].reverse(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverse(long)"
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].reverse(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].reverseBytes(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverseBytes(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].rotateLeft(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].rotateLeft(long,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].rotateLeft(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].rotateRight(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].rotateRight(long,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].rotateRight(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Longs].valueOf(long)"
    functionSourceFile: "net.jsign.bouncycastle.util.Longs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Longs:-1,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$7:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].<init>(net.jsign.commons.io.function.IOSpliterator)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSpliterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:40,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].characteristics()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSpliterator].characteristics()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:45,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].characteristics()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].estimateSize()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSpliterator].estimateSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:50,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].estimateSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].forEachRemaining(java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOSpliterator$forEachRemaining__92].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - "[net.jsign.commons.io.function.UncheckedIOSpliterator$accept__93].bootstrap$(java.util.function.Consumer)"
    - "[net.jsign.commons.io.function.Uncheck].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:55,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:55,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOSpliterator$forEachRemaining__92].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:55,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOSpliterator$accept__93].bootstrap$(java.util.function.Consumer)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:55,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].accept(net.jsign.commons.io.function.IOConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:59,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:61,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "java.io.UncheckedIOException"
    argCount: 1
    argTypes:
    - "java.io.IOException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:339,1"
      Dst: "[java.io.UncheckedIOException].<init>(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].getComparator()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Comparator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSpliterator].getComparator()"
    - "[net.jsign.commons.io.function.IOComparator].asComparator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:60,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].getComparator()"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:60,1"
      Dst: "[net.jsign.commons.io.function.IOComparator].asComparator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].getExactSizeIfKnown()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSpliterator].getExactSizeIfKnown()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:65,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].getExactSizeIfKnown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].hasCharacteristics(int)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSpliterator].hasCharacteristics(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:70,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].hasCharacteristics(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].tryAdvance(java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOSpliterator$tryAdvance__94].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - "[net.jsign.commons.io.function.UncheckedIOSpliterator$accept__95].bootstrap$(java.util.function.Consumer)"
    - "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:75,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:75,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOSpliterator$tryAdvance__94].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:75,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOSpliterator$accept__95].bootstrap$(java.util.function.Consumer)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:75,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:75,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].apply(net.jsign.commons.io.function.IOFunction,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOFunction"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:117,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.Uncheck:119,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.function.UncheckedIOSpliterator].trySplit()"
    functionSourceFile: "net.jsign.commons.io.function.UncheckedIOSpliterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Spliterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.function.UncheckedIOSpliterator$trySplit__96].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - "[net.jsign.commons.io.function.IOSpliterator].unwrap()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:80,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:80,1"
      Dst: "[net.jsign.commons.io.function.UncheckedIOSpliterator$trySplit__96].bootstrap$(net.jsign.commons.io.function.IOSpliterator)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:80,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    - Src: "net.jsign.commons.io.function.UncheckedIOSpliterator:80,1"
      Dst: "[net.jsign.commons.io.function.IOSpliterator].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.function.Uncheck].get(net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.function.Uncheck"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.ReaderInputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$hasNext__10].get()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.QueueInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.WriterOutputStream$Builder].get()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator$next__8].get()"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BoundedInputStream$Builder].get()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.input.BOMInputStream$Builder].get()"
    - "[net.jsign.commons.io.build.AbstractOrigin].get()"
    - "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    functionUses: 4
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.function.Uncheck:197,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.function.Uncheck:199,1"
      Dst: "[net.jsign.commons.io.function.Uncheck].wrap(java.io.IOException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.AlreadySelectedException:47,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].<init>(net.jsign.commons.cli.OptionGroup,net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.cli.OptionGroup"
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:61,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].getSelected()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.AlreadySelectedException:60,1"
      Dst: "[net.jsign.commons.cli.AlreadySelectedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].getOptionGroup()"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.OptionGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.AlreadySelectedException].getOption()"
    functionSourceFile: "net.jsign.commons.cli.AlreadySelectedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AlgorithmProvider].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings].configure(net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 1
    ICount: 45
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ConfigurableProvider].addAlgorithm(java.lang.String,java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].addExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].half(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].squareN(int[],int,int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].decAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves$5:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].createPrimitive(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 160
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 35
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isZero64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].isOne64(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].precompMultiplicand(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit64(int,long[],int,long,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce5(long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],int,long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits64(int,long[],int,int,long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyPrecomp(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiplyPrecomp(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    functionUses: 40
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].add(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].squareAddToExt(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implSquare(long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].multiplyAddToExt(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat576].createExt64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].implMultiply(long[],long[],long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].addExt(long[],long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field].reduce(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT571K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc7748.X25519Field].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ].<init>(net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.rfc8032.Ed25519$PointPrecompZ].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOIndexedException].toMessage(int,java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.io.IOIndexedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOIndexedException:40"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOIndexedException:40"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOIndexedException:39"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOIndexedException:41"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOIndexedException:40"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOIndexedException:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOIndexedException:40,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.commons.io.IOIndexedException:40,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "net.jsign.commons.io.IOIndexedException:41,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.commons.io.IOIndexedException:42,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOIndexedException:42,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOIndexedException].<init>(int,java.lang.Throwable)"
    functionSourceFile: "net.jsign.commons.io.IOIndexedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOIndexedException].toMessage(int,java.lang.Throwable)"
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOIndexedException:57,1"
      Dst: "[net.jsign.commons.io.IOIndexedException].toMessage(int,java.lang.Throwable)"
    - Src: "net.jsign.commons.io.IOIndexedException:57,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOIndexedException].getIndex()"
    functionSourceFile: "net.jsign.commons.io.IOIndexedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.operator.OperatorException:-1,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.operator.OperatorException].getCause()"
    functionSourceFile: "net.jsign.bouncycastle.operator.OperatorException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].<init>()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].set(java.lang.String)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].set(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].getFormattedMessage()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(java.lang.Object)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:41,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].getFormat()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ReusableSimpleMessage:46"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ReusableSimpleMessage:45"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].getParameters()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].getThrowable()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].formatTo(java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:61,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].swapParameters(java.lang.Object[])"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].getParameterCount()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].forEachParameter(net.jsign.log4j.message.ParameterConsumer,java.lang.Object)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.log4j.message.ParameterConsumer"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].memento()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.log4j.message.Message"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:89,1"
      Dst: "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.SimpleMessage].<init>(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.log4j.message.SimpleMessage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.SimpleMessage:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.ReusableSimpleMessage].length()"
    - "[net.jsign.log4j.message.SimpleMessage].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 9
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.log4j.message.ReusableSimpleMessage:96"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.message.ReusableSimpleMessage:95"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:96,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].charAt(int)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.SimpleMessage].charAt(int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].charAt(int)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:101,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].subSequence(int,int)"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.message.SimpleMessage].subSequence(int,int)"
    - "[net.jsign.log4j.message.ReusableSimpleMessage].subSequence(int,int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.message.ReusableSimpleMessage:106,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.message.ReusableSimpleMessage].clear()"
    functionSourceFile: "net.jsign.log4j.message.ReusableSimpleMessage"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].hasMoreElements()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2].nextElement()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 41
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$2:-1,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaSignature].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.AbstractSignatureSpi].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:196,1"
      Dst: "[net.jsign.jca.AbstractSignatureSpi].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaSignature].engineInitSign(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getProvider()"
    - "[java.security.Signature].getInstance(java.lang.String,java.security.Provider)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getPrivateKey()"
    - "[java.security.Signature].initSign(java.security.PrivateKey)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:204,1"
      Dst: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getProvider()"
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:204,1"
      Dst: "[java.security.Signature].getInstance(java.lang.String,java.security.Provider)"
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:206,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:208,1"
      Dst: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getPrivateKey()"
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:208,1"
      Dst: "[java.security.Signature].initSign(java.security.PrivateKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getProvider()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey].getPrivateKey()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaPrivateKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.security.PrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaSignature].engineUpdate(byte)"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Signature].update(byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:213,1"
      Dst: "[java.security.Signature].update(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaSignature].engineUpdate(byte[],int,int)"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Signature].update(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:218,1"
      Dst: "[java.security.Signature].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.JsignJcaProvider$JsignJcaSignature].engineSign()"
    functionSourceFile: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Signature].sign()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.JsignJcaProvider$JsignJcaSignature:223,1"
      Dst: "[java.security.Signature].sign()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].<init>()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Options:49,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.commons.cli.Options:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOptionGroup(net.jsign.commons.cli.OptionGroup)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.OptionGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - "[java.util.List].add(java.lang.Object)"
    - "[net.jsign.commons.cli.OptionGroup].getOptions()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].setRequired(boolean)"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:70"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:74"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:75"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:86"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Options:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:70,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].isRequired()"
    - Src: "net.jsign.commons.cli.Options:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:75,1"
      Dst: "[net.jsign.commons.cli.OptionGroup].getOptions()"
    - Src: "net.jsign.commons.cli.Options:75,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.cli.Options:75,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.Options:75,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.Options:80,1"
      Dst: "[net.jsign.commons.cli.Option].setRequired(boolean)"
    - Src: "net.jsign.commons.cli.Options:81,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    - Src: "net.jsign.commons.cli.Options:83,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:83,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.cli.OptionGroup].isRequired()"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.OptionGroup].getOptions()"
    functionSourceFile: "net.jsign.commons.cli.OptionGroup"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionGroup:76,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].setRequired(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:203"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:192,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:195,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:201,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.Options:203,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "net.jsign.commons.cli.Options:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Option].getKey()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:179"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.Options].getOptionGroups()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:96,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.commons.cli.Options:96,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.cli.Options"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:113,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.cli.Options"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:152"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:144,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Option:78,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.Option:146,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.OptionValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].toCharArray()"
    - "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.OptionValidator:48"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:53"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:54"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:58"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:61"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:67"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:76"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.OptionValidator:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.OptionValidator:69"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.OptionValidator:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.OptionValidator:54,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.cli.OptionValidator:56,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.commons.cli.OptionValidator:58,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidOpt(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.OptionValidator:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.OptionValidator:67,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "net.jsign.commons.cli.OptionValidator:69,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].isValidChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:203"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:192,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:195,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:201,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.Options:203,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "net.jsign.commons.cli.Options:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Options].addOption(java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.commons.cli.Options"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:131,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.cli.Options"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.cli.Options"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:150,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addRequiredOption(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.commons.cli.Options"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - "[net.jsign.commons.cli.Option].setRequired(boolean)"
    - "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:178,1"
      Dst: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:179,1"
      Dst: "[net.jsign.commons.cli.Option].setRequired(boolean)"
    - Src: "net.jsign.commons.cli.Options:180,1"
      Dst: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Option:152"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Option:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Option:144,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.Option:78,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.Option:146,1"
      Dst: "[net.jsign.commons.cli.OptionValidator].validateOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.Option].setRequired(boolean)"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:203"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:192,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:195,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:201,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.Options:203,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "net.jsign.commons.cli.Options:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Options].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Options"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[net.jsign.commons.cli.Option].hasLongOpt()"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.commons.cli.Option].isRequired()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:195"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:200"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:201"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:209"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:203"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:192,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:195,1"
      Dst: "[net.jsign.commons.cli.Option].hasLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.Options:197,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:201,1"
      Dst: "[net.jsign.commons.cli.Option].isRequired()"
    - Src: "net.jsign.commons.cli.Options:203,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:205,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "net.jsign.commons.cli.Options:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.commons.cli.Options].getOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Options].helpOptions()"
    - "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:222,1"
      Dst: "[net.jsign.commons.cli.Options].helpOptions()"
    - Src: "net.jsign.commons.cli.Options:222,1"
      Dst: "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].helpOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:232,1"
      Dst: "[java.util.Map].values()"
    - Src: "net.jsign.commons.cli.Options:232,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getRequiredOptions()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:242,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:259"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:257,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:259,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:261,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.cli.Options].getMatchingOptions(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:281"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:285"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:286"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:294"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.Options:293"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:288"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:276,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.Options:281,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.commons.cli.Options:281,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:283,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.Options:286,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.Options:288,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:290,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Options].hasOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.Options:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:304"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.Options:307"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.Options:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:305,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:307,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.cli.Options].hasLongOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:319,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:321,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].hasShortOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:333,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:335,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].getOptionGroup(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.OptionGroup"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Option].getKey()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:346,1"
      Dst: "[net.jsign.commons.cli.Option].getKey()"
    - Src: "net.jsign.commons.cli.Options:346,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Options].toString()"
    functionSourceFile: "net.jsign.commons.cli.Options"
    linkageType: null
    functionLinenumber: 356
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.JsonObject].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.Options:357,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.Options:359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.Options:360,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.cli.Options:362,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.commons.cli.Options:365,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].init(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].getPaddingName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].addPadding(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.paddings.PKCS7Padding].padCount(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.paddings.PKCS7Padding:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.InvalidCipherTextException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.InvalidCipherTextException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.InvalidCipherTextException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$XDH].<init>()"
    functionSourceFile: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$XDH"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.11.org.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi$XDH:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.edec.KeyPairGeneratorSpi].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBMPString].<init>(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBMPString].<init>(byte[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.DERBMPString].<init>(char[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(char[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.DERBMPString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1BMPString].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].isKoblitz()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getM()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].isTrinomial()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getK1()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getK2()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].getK3()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve,int,long[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].copy64(long[],int,long[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve,int,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeReference].<init>(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper].createAction()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$DigestRefWrapper:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SHA256NativeDigest$Disposer:-1,1"
      Dst: "[net.jsign.bouncycastle.util.dispose.NativeDisposer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PasswordException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PasswordException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PasswordException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getInstance(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjectAt(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getPublicKeyParamSet()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getDigestParamSet()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].getEncryptionParamSet()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 110
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "<init>(int)"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 74
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 69
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Object)"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.ASN1Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:41,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    functionSourceFile: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 110
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:49"
      Branch Sides:
      - BranchSide: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:53"
        BranchSideFuncs:
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
      - BranchSide: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:52"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    Callsites:
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:47,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:48,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue:53,1"
      Dst: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    functionUses: 18
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 283
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-2"
        BranchSideFuncs:
        - "reallocate(int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1EncodableVector:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].reallocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.BERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSequence:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].sqrt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT131R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator].calculateKeyId(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].<init>()"
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].getDigestSize()"
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].update(byte[],int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].<init>()"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].getDigestSize()"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].doFinal(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].<init>()"
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].reset()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].<init>()"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].reset()"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].reset()"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int,byte[],int)"
    - Src: "net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.cert.selector.MSOutlookKeyIdCalculator$SHA1Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].getYCoord()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 21
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].getCompressionYTilde()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withGOST3411].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withGOST3411"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$PBKDF2withGOST3411:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$BasePBKDF2].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil].loadClass(java.lang.Class,java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.symmetric.util.ClassUtil:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.util.ClassUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1TaggedObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(net.jsign.bouncycastle.asn1.ASN1TaggedObject,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].fromExtensions(net.jsign.bouncycastle.asn1.x509.Extensions)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.x509.Extensions,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.Extensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.Extensions"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.Extensions:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.Extensions:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.Extensions:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.Extensions].getExtensionParsedValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].<init>(net.jsign.bouncycastle.asn1.x509.KeyPurposeId[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.KeyPurposeId[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[java.util.Hashtable].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>(int)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSequence].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].hasKeyPurposeId(net.jsign.bouncycastle.asn1.x509.KeyPurposeId)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].getUsages()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].size()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.asn1.x509.KeyPurposeId].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.KeyPurposeId:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].size()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:-1,1"
      Dst: "[java.util.Hashtable].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage].toASN1Primitive()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 110
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1].<init>(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1].decrypt(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PasswordException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].access$000(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder)"
    - "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].crypt(boolean,net.jsign.bouncycastle.jcajce.util.JcaJceHelper,byte[],char[],java.lang.String,byte[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PasswordException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].access$000(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].crypt(boolean,net.jsign.bouncycastle.jcajce.util.JcaJceHelper,byte[],char[],java.lang.String,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.openssl.PasswordException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PasswordException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PasswordException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder].access$000(net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.openssl.jcajce.JcePEMDecryptorProviderBuilder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].crypt(boolean,net.jsign.bouncycastle.jcajce.util.JcaJceHelper,byte[],char[],java.lang.String,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 6
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    - "byte[]"
    - "char[]"
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[],boolean)"
    - "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[])"
    - "[javax.crypto.spec.RC2ParameterSpec].<init>(int)"
    - "[javax.crypto.spec.RC2ParameterSpec].<init>(int,byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - "[javax.crypto.Cipher].init(int,java.security.Key)"
    - "[javax.crypto.Cipher].init(int,java.security.Key,java.security.spec.AlgorithmParameterSpec)"
    - "[javax.crypto.Cipher].doFinal(byte[])"
    - "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 135
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.spec.IvParameterSpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[],boolean)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.spec.RC2ParameterSpec].<init>(int)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.spec.RC2ParameterSpec].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createCipher(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.Cipher].init(int,java.security.Key)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.Cipher].init(int,java.security.Key,java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.Cipher].doFinal(byte[])"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 18
    BBCount: 46
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.crypto.SecretKey"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    - "char[]"
    - "java.lang.String"
    - "int"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.PBEKeySpec].<init>(char[],byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSecretKeyFactory(java.lang.String)"
    - "[javax.crypto.SecretKeyFactory].generateSecret(java.security.spec.KeySpec)"
    - "[java.security.Key].getEncoded()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.spec.PBEKeySpec].<init>(char[],byte[],int,int)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.util.JcaJceHelper].createSecretKeyFactory(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.SecretKeyFactory].generateSecret(java.security.spec.KeySpec)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.crypto.SecretKey"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.jcajce.util.JcaJceHelper"
    - "char[]"
    - "java.lang.String"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[],boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.jcajce.PEMUtilities:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.jcajce.PEMUtilities].getKey(net.jsign.bouncycastle.jcajce.util.JcaJceHelper,char[],java.lang.String,int,byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.EncryptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.EncryptionException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.EncryptionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.EncryptionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.EncryptionException:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].<init>()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:96,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].run()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil].access$100()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getContextClassLoader()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    functionUses: 5
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:100"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:103"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:102"
        BranchSideFuncs:
        - "access$100()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:104"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:102"
        BranchSideFuncs:
        - "access$100()"
    - Branch String: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:104"
      Branch Sides:
      - BranchSide: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:102"
        BranchSideFuncs:
        - "access$100()"
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:99,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:99,1"
      Dst: "[java.lang.Thread].getContextClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:103,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:104,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil].access$100()"
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:104,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.log4j.util.LoaderUtil].access$100()"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].<init>(net.jsign.log4j.util.LoaderUtil$1)"
    functionSourceFile: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.log4j.util.LoaderUtil$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter:96,1"
      Dst: "[net.jsign.log4j.util.LoaderUtil$ThreadContextClassLoaderGetter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader$1$1].<init>(net.jsign.bouncycastle.crypto.NativeLoader$1,java.io.File)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.NativeLoader$1"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader$1$1].run()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader$1$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.NativeLoader].access$200()"
    - "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - "[java.util.logging.Logger].fine(java.lang.String)"
    - "[java.io.File].exists()"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].listFiles()"
    - "[java.io.File].delete()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 49
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-2"
        BranchSideFuncs:
        - "access$200()"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-2"
        BranchSideFuncs:
        - "access$200()"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-2"
        BranchSideFuncs:
        - "access$200()"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-2"
        BranchSideFuncs:
        - "access$200()"
    - Branch String: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-2"
        BranchSideFuncs:
        - "access$200()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.NativeLoader].access$200()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.util.logging.Logger].isLoggable(java.util.logging.Level)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.util.logging.Logger].fine(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.io.File].exists()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.io.File].delete()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "net.jsign.bouncycastle.crypto.NativeLoader$1$1:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.NativeLoader].access$200()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.NativeLoader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.logging.Logger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].getSBox(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getSbox()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getSBox()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.spec.GOST28147ParameterSpec:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].<init>(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].copyTo(long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addShiftedByWords(net.jsign.bouncycastle.math.ec.LongArray,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].resizedInts(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].distribute(long[],int,int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].getLength()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modMultiplyLD(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    functionUses: 0
    ICount: 116
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 31
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modMultiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modMultiplyAlt(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave(long[],int,long[],int,int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].distribute(long[],int,int,int,int)"
    functionUses: 0
    ICount: 132
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].distribute(long[],int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 39
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].distribute(long[],int,int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modReduce(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].multiply(net.jsign.bouncycastle.math.ec.LongArray,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 107
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].multiplyWord(long,long[],int,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].shiftUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addBoth(long[],int,long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduce(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceResult(long[],int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipVector(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionUses: 1
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceWord(long[],int,int,long,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBit(long[],int,int,int,int[])"
        - "testBit(long[],int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBit(long[],int,int,int,int[])"
        - "testBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].testBit(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipWord(long[],int,int,long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceWord(long[],int,int,long,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipWord(long[],int,int,long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedDown(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].flipVector(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedDown(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modSquare(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modSquareN(int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceInPlace(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "reduceBitWise(long[],int,int,int,int[])"
        - "reduceVectorWise(long[],int,int,int,int,int[])"
        - "reduceWordWise(long[],int,int,int,int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceVectorWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceWordWise(long[],int,int,int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBitWise(long[],int,int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].square(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].squareInPlace(long[],int,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave3(long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave3(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave3_21to63(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave5(long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave5(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave3_13to65(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave7(long[],int,long[],int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave7(long)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave2_n(long[],int,long[],int,int,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "long[]"
    - "int"
    - "long[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave2_n(long,int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave4_16to64(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].interleave2_32to64(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].modInverse(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.LongArray"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degree()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 5
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].reduceBit(long[],int,int,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long[]"
    - "int"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "flipBit(long[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].flipBit(long[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedByBitsSafe(net.jsign.bouncycastle.math.ec.LongArray,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.LongArray"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    functionUses: 2
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "add(long[],int,long[],int,int)"
        - "addShiftedUp(long[],int,long[],int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].add(long[],int,long[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].addShiftedUp(long[],int,long[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].degreeFrom(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    functionUses: 2
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    - Branch String: "net.jsign.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "bitLength(long)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].bitLength(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionUses: 5
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionUses: 4
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    - "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionUses: 13
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(long[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long[]"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].toString()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - "[java.lang.Long].toBinaryString(long)"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 4
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-2"
        BranchSideFuncs:
        - "getUsedLength()"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.Long].toBinaryString(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLength()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.LongArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.LongArray:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.LongArray].getUsedLengthFrom(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].cloneCurve()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].valueOf(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-2"
        BranchSideFuncs:
        - "<init>()"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "subFrom(int[],int[])"
        - "fromBigInteger(java.math.BigInteger)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].supportsCoordinateSystem(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].getQ()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].getFieldSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].getInfinity()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].createCacheSafeLookupTable(net.jsign.bouncycastle.math.ec.ECPoint[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECLookupTable"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.raw.Nat160].copy(int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve,int,int[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].copy(int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].randomFieldElement(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].randomFieldElementMult(java.security.SecureRandom)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "java.security.SecureRandom"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].randomMult(java.security.SecureRandom,int[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat160].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].randomMult(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "random(java.security.SecureRandom,int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[java.math.BigInteger].signum()"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].signum()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    functionUses: 41
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].testBitZero()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].getBit(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].toBigInteger()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    functionUses: 28
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].toBigInteger(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].getFieldName()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].getFieldSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    functionUses: 40
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "add(int[],int[],int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].addOne()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].addOne(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionUses: 53
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionUses: 40
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].square()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].invert()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].inv(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].sqrt()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].isOne(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].squareN(int[],int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].equals(java.lang.Object)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-2"
        BranchSideFuncs:
        - "eq(int[],int[])"
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat192].eq(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].hashCode()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    - "[java.math.BigInteger].hashCode()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[java.math.BigInteger].hashCode()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(int[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].newInstance()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].getOutputSize(boolean,net.jsign.bouncycastle.crypto.CipherParameters,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].getOutputSize(boolean,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.AESGCMSIVModePacketCipher].checkParameters(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].getOutputSize(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].getOutputSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].processPacket(boolean,net.jsign.bouncycastle.crypto.CipherParameters,byte[],int,int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 7
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[java.lang.Object].clone()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].processPacket(boolean,byte[],byte[],byte[],byte[],int,int,byte[],int,int)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    - Src: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].processPacket(boolean,byte[],byte[],byte[],byte[],int,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getNonce()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getAssociatedText()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.AEADParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.AEADParameters].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.AEADParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].getKey()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.PacketCipherException].'from'(java.lang.Throwable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.PacketCipherException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.crypto.PacketCipherException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.PacketCipherException:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.PacketCipherException:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.crypto.PacketCipherException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.PacketCipherException].<init>(net.jsign.bouncycastle.crypto.PacketCipherException$Reason,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].processPacket(boolean,byte[],byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 10
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].getOutputSize(boolean,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].processPacket(boolean,byte[],byte[],byte[],byte[],int,int,byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 10
    argTypes:
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 0
    BBCount: 0
  - functionName: "[net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher].toString()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.engines.AESNativeGCMSIVPacketCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.file.Counters$BigIntegerPathCounters].<init>()"
    functionSourceFile: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.file.Counters].bigIntegerCounter()"
    - "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters:176,1"
      Dst: "[net.jsign.commons.io.file.Counters].bigIntegerCounter()"
    - Src: "net.jsign.commons.io.file.Counters$BigIntegerPathCounters:176,1"
      Dst: "[net.jsign.commons.io.file.Counters$AbstractPathCounters].<init>(net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter,net.jsign.commons.io.file.Counters$Counter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECKeyParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:59,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.ArrayList)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:67,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].<init>()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:68,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.ArrayList)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:77,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:77,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.ArrayList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(net.jsign.commons.io.filefilter.IOFileFilter[])"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:87,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:87,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:88,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(net.jsign.commons.io.filefilter.IOFileFilter,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:99,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(int)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:100,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.List)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.ArrayList)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:112,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:112,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:112,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].<init>(java.util.ArrayList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].accept(java.io.File)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_0__97].bootstrap$(java.io.File)"
    - "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:120"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:119"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:120"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:120,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:120,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:120,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_0__97].bootstrap$(java.io.File)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:120,1"
      Dst: "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:168,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].accept(java.io.File,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_1__98].bootstrap$(java.io.File,java.lang.String)"
    - "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:128"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:128"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:128,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:128,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:128,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_1__98].bootstrap$(java.io.File,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:128,1"
      Dst: "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:168,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.file.FileVisitResult"
    argCount: 2
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - "[java.util.Collection].stream()"
    - "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_2__99].bootstrap$(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toDefaultFileVisitResult(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:137"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:137,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:138,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:138,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter$lambda_accept_2__99].bootstrap$(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:138,1"
      Dst: "[java.util.stream.Stream].allMatch(java.util.function.Predicate)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:138,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].toDefaultFileVisitResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:168,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:146,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:146,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].addFileFilter(net.jsign.commons.io.filefilter.IOFileFilter[])"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.stream.Stream].of(java.lang.Object[])"
    - "[net.jsign.commons.io.filefilter.AndFileFilter$addFileFilter__100].bootstrap$(net.jsign.commons.io.filefilter.AndFileFilter)"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:156,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:156,1"
      Dst: "[java.util.stream.Stream].of(java.lang.Object[])"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:156,1"
      Dst: "[net.jsign.commons.io.filefilter.AndFileFilter$addFileFilter__100].bootstrap$(net.jsign.commons.io.filefilter.AndFileFilter)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:156,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].getFileFilters()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:164,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].isEmpty()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:168,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].removeFileFilter(net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:176,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].setFileFilters(java.util.List)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].clear()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:184,1"
      Dst: "[java.util.List].clear()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:185,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].toString()"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - "[net.jsign.commons.io.filefilter.AbstractFileFilter].append(java.util.List,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:195,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:196,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].toString()"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:196,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:198,1"
      Dst: "[net.jsign.commons.io.filefilter.AbstractFileFilter].append(java.util.List,java.lang.StringBuilder)"
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].lambda$accept$2(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.file.Path"
    - "java.nio.file.attribute.BasicFileAttributes"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.filefilter.AndFileFilter:138"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.filefilter.AndFileFilter:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:138,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].lambda$accept$1(java.io.File,java.lang.String,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:128,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.filefilter.AndFileFilter].lambda$accept$0(java.io.File,net.jsign.commons.io.filefilter.IOFileFilter)"
    functionSourceFile: "net.jsign.commons.io.filefilter.AndFileFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "net.jsign.commons.io.filefilter.IOFileFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.filefilter.AndFileFilter:120,1"
      Dst: "[net.jsign.commons.io.filefilter.IOFileFilter].accept(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractF2m].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT283R1Curve:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$000(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.ec.CustomNamedCurves$27:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].<init>(net.jsign.bouncycastle.crypto.BlockCipher,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.BlockCipher"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getUnderlyingCipher()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.BlockCipher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getAlgorithmName()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.AESNativeCFB:net.jsign.bouncycastle.crypto.engines.AESNativeCTR:net.jsign.bouncycastle.crypto.engines.DSTU7624Engine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine:net.jsign.bouncycastle.crypto.modes.CFBBlockCipher:net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher:net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].getBlockSize()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    functionUses: 13
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].getBlockSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlockWithIV(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlockWithIV(byte[],int,byte[],int)"
    functionUses: 49
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "decryptBlockWithIV(byte[],int,byte[],int)"
        - "decryptBlock(byte[],int,byte[],int)"
        - "encryptBlockWithIV(byte[],int,byte[],int)"
        - "encryptBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "decryptBlockWithIV(byte[],int,byte[],int)"
        - "decryptBlock(byte[],int,byte[],int)"
        - "encryptBlockWithIV(byte[],int,byte[],int)"
        - "encryptBlock(byte[],int,byte[],int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "decryptBlockWithIV(byte[],int,byte[],int)"
        - "decryptBlock(byte[],int,byte[],int)"
        - "encryptBlockWithIV(byte[],int,byte[],int)"
        - "encryptBlock(byte[],int,byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlockWithIV(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlockWithIV(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlock(byte[],int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlockWithIV(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 128
    EdgeCount: 68
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.DataLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    functionUses: 16
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.DataLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.RuntimeCryptoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.OutputLengthException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.OutputLengthException:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlockWithIV(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 139
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 14
    ICount: 20
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.crypto.CipherParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    functionUses: 20
    ICount: 43
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "getParameters()"
        - "getIV()"
        - "reset()"
        - "init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].init(boolean,net.jsign.bouncycastle.crypto.CipherParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getIV()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].reset()"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine:net.jsign.bouncycastle.crypto.engines.GOST28147Engine].reset()"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    functionUses: 14
    ICount: 20
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.params.ParametersWithIV].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ParametersWithIV"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.crypto.CipherParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlockWithIV(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 128
    EdgeCount: 68
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlockWithIV(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 139
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 20
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].decryptBlock(byte[],int,byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    - "[net.jsign.bouncycastle.crypto.modes.GCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.OpenPGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCBC].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.SICBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCTR].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.KCTRBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.GOST28147Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.DSTU7624Engine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeCFB].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.CBCBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.modes.GOFBBlockCipher].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.engines.AESNativeEngine].processBlock(byte[],int,byte[],int)"
    - "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-2"
        BranchSideFuncs:
        - "processBlock(byte[],int,byte[],int)"
        - "<init>(java.lang.String)"
        - "encryptByte(byte,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.DataLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.OutputLengthException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.BlockCipher].processBlock(byte[],int,byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.modes.PGPCFBBlockCipher].encryptByte(byte,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].getCounter()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].getUsageIndex()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].hashCode()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].hashCode(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.params.DSAValidationParameters].equals(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionUses: 5
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    - Branch String: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-2"
        BranchSideFuncs:
        - "areEqual(byte[],byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DSAValidationParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.util.Arrays].areEqual(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 53
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10].run()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom].<init>(java.lang.Object[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$500()"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$500()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$10:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom].<init>(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].access$500()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].findSource()"
    functionUses: 4
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].findSource()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].findSource()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].newInstance()"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.lang.Class].newInstance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom].<init>(java.lang.Object[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].<init>(java.security.SecureRandomSpi,java.security.Provider)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$CoreSecureRandom:-1,1"
      Dst: "[java.security.SecureRandom].<init>(java.security.SecureRandomSpi,java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].<init>()"
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].copyHashTable(java.util.Hashtable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].copyHashTable(java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].encodeStringValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.ASN1Encodable"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].encodeStringValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(net.jsign.bouncycastle.asn1.ASN1Primitive)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.AbstractX500NameStyle].encodeStringValue(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERIA5String"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERIA5String:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERIA5String].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].getDate()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1GeneralizedTime:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERPrintableString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERPrintableString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.DERPrintableString].<init>(java.lang.String,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DERPrintableString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DERPrintableString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1PrintableString].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].oidToDisplayName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].oidToAttrNames(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].findAttrNamesForOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.util.Hashtable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].findAttrNamesForOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].findAttrNamesForOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - "[java.util.Hashtable].keys()"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].attrNameToOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeAttrName(java.lang.String,java.util.Hashtable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeAttrName(java.lang.String,java.util.Hashtable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].decodeAttrName(java.lang.String,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].tryFromID(java.lang.String)"
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].tryFromID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].fromString(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].rDNsFromString(java.lang.String,net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].rDNsFromString(java.lang.String,net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].rDNsFromString(java.lang.String,net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.x500.X500NameStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].build()"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].<init>(net.jsign.bouncycastle.asn1.x500.X500NameStyle)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].addRDNs(net.jsign.bouncycastle.asn1.x500.X500NameStyle,net.jsign.bouncycastle.asn1.x500.X500NameBuilder,net.jsign.bouncycastle.asn1.x500.style.X500NameTokenizer)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500NameBuilder].build()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.BCStyle].toString(net.jsign.bouncycastle.asn1.x500.X500Name)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.BCStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x500.X500Name"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
    - "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs:
        - "appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
        - "getRDNs()"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-2"
        BranchSideFuncs:
        - "appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
        - "getRDNs()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.BCStyle:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.x500.X500Name].getRDNs()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.X500Name"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x500.RDN[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 4
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.X500Name:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendRDN(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.RDN,java.util.Hashtable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "net.jsign.bouncycastle.asn1.x500.RDN"
    - "java.util.Hashtable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getFirst()"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - "[net.jsign.bouncycastle.asn1.x500.RDN].isMultiValued()"
    - "[java.lang.StringBuffer].append(char)"
    functionUses: 1
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Branch String: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-2"
        BranchSideFuncs:
        - "getTypesAndValues()"
        - "getFirst()"
        - "isMultiValued()"
        - "appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].isMultiValued()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getTypesAndValues()"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.style.IETFUtils].appendTypeAndValue(java.lang.StringBuffer,net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue,java.util.Hashtable)"
    - Src: "net.jsign.bouncycastle.asn1.x500.style.IETFUtils:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x500.RDN].getFirst()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServiceConstraintsException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServiceConstraintsException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServiceConstraintsException:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$Poly1305KeyGen].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$Poly1305KeyGen"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.generators.Poly1305KeyGenerator].<init>()"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].<init>(java.lang.String,int,net.jsign.bouncycastle.crypto.CipherKeyGenerator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$Poly1305KeyGen:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.generators.Poly1305KeyGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$Poly1305KeyGen:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseKeyGenerator].<init>(java.lang.String,int,net.jsign.bouncycastle.crypto.CipherKeyGenerator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].values()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.FileSystem[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:34,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].valueOf(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.FileSystem"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:34,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].current()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.FileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:140"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:143"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:142"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:143"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:146"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:145"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:148"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileSystem].getCurrent()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.FileSystem"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getOsMatchesName(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].getSystemProperty(java.lang.String)"
    - "[net.jsign.commons.io.FileSystem].isOsNameMatch(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:169,1"
      Dst: "[net.jsign.commons.io.FileSystem].getSystemProperty(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:169,1"
      Dst: "[net.jsign.commons.io.FileSystem].isOsNameMatch(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getSystemProperty(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:187,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileSystem].isOsNameMatch(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:282"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:285"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:285,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.commons.io.FileSystem:285,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileSystem].getSystemProperty(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:187,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.FileSystem:190,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Character].toChars(int)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:240"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:243"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:242"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:244"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:247"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:246"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:247"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:248"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:249"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:248"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:256"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:261"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:261"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:241,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.jsign.commons.io.FileSystem:243,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "net.jsign.commons.io.FileSystem:249,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.commons.io.FileSystem:257,1"
      Dst: "[java.lang.Character].toChars(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.commons.io.FileSystem].isOsNameMatch(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:282"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:285"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:285,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "net.jsign.commons.io.FileSystem:285,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.FileSystem].replace(java.lang.String,char,char)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:297,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].<init>(java.lang.String,int,int,boolean,boolean,int,int,int[],java.lang.String[],boolean,boolean,char)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 12
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    - "int"
    - "int[]"
    - "java.lang.String[]"
    - "boolean"
    - "boolean"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.FilenameUtils].flipSeparator(char)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:328,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "net.jsign.commons.io.FileSystem:332,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:339,1"
      Dst: "[net.jsign.commons.io.FilenameUtils].flipSeparator(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getBlockSize()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getIllegalFileNameChars()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:359"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:361"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].getIllegalFileNameCodePoints()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:372,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getMaxFileNameLength()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getMaxPathLength()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getNameSeparator()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].getReservedFileNames()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:410,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].isCasePreserving()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].isCaseSensitive()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:439"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:439,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].isLegalFileName(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[net.jsign.commons.io.FileSystem].isReservedFileName(java.lang.CharSequence)"
    - "[java.lang.CharSequence].chars()"
    - "[net.jsign.commons.io.FileSystem$isIllegalFileNameChar__101].bootstrap$(net.jsign.commons.io.FileSystem)"
    - "[java.util.stream.IntStream].noneMatch(java.util.function.IntPredicate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:452"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:453"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:452"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:452"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:453"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:452"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:452"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:455"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:454"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:455"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:458"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:452,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "net.jsign.commons.io.FileSystem:455,1"
      Dst: "[net.jsign.commons.io.FileSystem].isReservedFileName(java.lang.CharSequence)"
    - Src: "net.jsign.commons.io.FileSystem:458,1"
      Dst: "[java.lang.CharSequence].chars()"
    - Src: "net.jsign.commons.io.FileSystem:458,1"
      Dst: "[net.jsign.commons.io.FileSystem$isIllegalFileNameChar__101].bootstrap$(net.jsign.commons.io.FileSystem)"
    - Src: "net.jsign.commons.io.FileSystem:458,1"
      Dst: "[java.util.stream.IntStream].noneMatch(java.util.function.IntPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileSystem].isReservedFileName(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:469"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:469"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:469,1"
      Dst: "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    - Src: "net.jsign.commons.io.FileSystem:470,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:525"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:523"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:524,1"
      Dst: "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    - Src: "net.jsign.commons.io.FileSystem:525,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.Character].toChars(int)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:240"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:243"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:242"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:244"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:247"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:246"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:247"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:255"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:248"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:249"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:248"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:247"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:256"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:258"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:null"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:261"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:261"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:257"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:241,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "net.jsign.commons.io.FileSystem:243,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "net.jsign.commons.io.FileSystem:249,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "net.jsign.commons.io.FileSystem:257,1"
      Dst: "[java.lang.Character].toChars(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[net.jsign.commons.io.FileSystem].isReservedFileName(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    - "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:469"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:469"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:468"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:470"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:469"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:469,1"
      Dst: "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    - Src: "net.jsign.commons.io.FileSystem:470,1"
      Dst: "[java.util.Arrays].binarySearch(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.commons.io.FileSystem].normalizeSeparators(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].replace(java.lang.String,char,char)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:481,1"
      Dst: "[net.jsign.commons.io.FileSystem].replace(java.lang.String,char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].replace(java.lang.String,char,char)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:297"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:297,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].supportsDriveLetter()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.FileSystem].toLegalFileName(java.lang.String,char)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    - "[java.lang.Character].valueOf(char)"
    - "[java.lang.Enum].name()"
    - "[java.util.Arrays].toString(int[])"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].chars()"
    - "[net.jsign.commons.io.FileSystem$lambda_toLegalFileName_0__102].bootstrap$(net.jsign.commons.io.FileSystem,char)"
    - "[java.util.stream.IntStream].map(java.util.function.IntUnaryOperator)"
    - "[java.util.stream.IntStream].toArray()"
    - "[java.lang.String].<init>(int[],int,int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:513"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:517"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:516"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:514"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.FileSystem:518"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:518"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.FileSystem:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:513,1"
      Dst: "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    - Src: "net.jsign.commons.io.FileSystem:516,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "net.jsign.commons.io.FileSystem:516,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "net.jsign.commons.io.FileSystem:516,1"
      Dst: "[java.util.Arrays].toString(int[])"
    - Src: "net.jsign.commons.io.FileSystem:515,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.FileSystem:515,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.FileSystem:518,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.commons.io.FileSystem:518,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "net.jsign.commons.io.FileSystem:519,1"
      Dst: "[java.lang.String].chars()"
    - Src: "net.jsign.commons.io.FileSystem:519,1"
      Dst: "[net.jsign.commons.io.FileSystem$lambda_toLegalFileName_0__102].bootstrap$(net.jsign.commons.io.FileSystem,char)"
    - Src: "net.jsign.commons.io.FileSystem:519,1"
      Dst: "[java.util.stream.IntStream].map(java.util.function.IntUnaryOperator)"
    - Src: "net.jsign.commons.io.FileSystem:519,1"
      Dst: "[java.util.stream.IntStream].toArray()"
    - Src: "net.jsign.commons.io.FileSystem:520,1"
      Dst: "[java.lang.String].<init>(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:439"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:439,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].trimExtension(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:525"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:523"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:524,1"
      Dst: "[net.jsign.commons.io.FileSystem].indexOf(java.lang.CharSequence,int,int)"
    - Src: "net.jsign.commons.io.FileSystem:525,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].lambda$toLegalFileName$0(char,int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:519"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:518"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:519,1"
      Dst: "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].isIllegalFileNameChar(int)"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.FileSystem:439"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.FileSystem:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.FileSystem:439,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.FileSystem].$values()"
    functionSourceFile: "net.jsign.commons.io.FileSystem"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.io.FileSystem[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Null$1].<init>(java.lang.Class,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Null$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Null$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].<init>(java.lang.Class,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Null$1].fromImplicitPrimitive(net.jsign.bouncycastle.asn1.DEROctetString)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Null$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.DEROctetString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Null$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Null$1:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Null].createPrimitive(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7].run()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProperty(java.lang.String)"
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$7:-1,1"
      Dst: "[java.security.Security].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser].parseObject(net.jsign.bouncycastle.util.io.pem.PemObject)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.io.pem.PemObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.openssl.PEMParser$EncryptedPrivateKeyParser:-1,1"
      Dst: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.util.io.pem.PemObject].getContent()"
    functionSourceFile: "net.jsign.bouncycastle.util.io.pem.PemObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Sequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getObjects()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 17
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.pkcs.PKCS8EncryptedPrivateKeyInfo:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.openssl.PEMException].<init>(java.lang.String,java.lang.Exception)"
    functionSourceFile: "net.jsign.bouncycastle.openssl.PEMException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.openssl.PEMException:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].<init>()"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -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.jsign.poi.util.GenericRecordUtil:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].singletonMap(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:36,1"
      Dst: "[java.util.Collections].singletonMap(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:43,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:51,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:60,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:71,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 12
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:82,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 14
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:94,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 16
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:107,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getGenericProperties(java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier,java.lang.String,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 18
    argTypes:
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    - "java.lang.String"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.Supplier].get()"
    - "[java.util.Map].putAll(java.util.Map)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:126"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:138"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:137"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:127"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:128"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:127"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:128"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:134"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:133"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:130"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:121,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:127,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:128,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:129,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:132,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:134,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:138,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].safeEnum(java.lang.Enum[],java.util.function.Supplier)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.function.Supplier"
    argCount: 2
    argTypes:
    - "java.lang.Enum[]"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil].safeEnum(java.lang.Enum[],java.util.function.Supplier,java.lang.Enum)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:142,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil].safeEnum(java.lang.Enum[],java.util.function.Supplier,java.lang.Enum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].safeEnum(java.lang.Enum[],java.util.function.Supplier,java.lang.Enum)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Supplier"
    argCount: 3
    argTypes:
    - "java.lang.Enum[]"
    - "java.util.function.Supplier"
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Number].intValue()"
    - "[net.jsign.poi.util.GenericRecordUtil$lambda_safeEnum_0__103].bootstrap$(int,java.lang.Enum[],java.lang.Enum)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:146,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:146,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:147,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$lambda_safeEnum_0__103].bootstrap$(int,java.lang.Enum[],java.lang.Enum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].safeEnum(java.lang.Enum[],java.util.function.Supplier,java.lang.Enum)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Supplier"
    argCount: 3
    argTypes:
    - "java.lang.Enum[]"
    - "java.util.function.Supplier"
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Number].intValue()"
    - "[net.jsign.poi.util.GenericRecordUtil$lambda_safeEnum_0__103].bootstrap$(int,java.lang.Enum[],java.lang.Enum)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:146,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:146,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:147,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$lambda_safeEnum_0__103].bootstrap$(int,java.lang.Enum[],java.lang.Enum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getBitsAsString(java.util.function.Supplier,net.jsign.poi.util.BitField[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Supplier"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "net.jsign.poi.util.BitField[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[net.jsign.poi.util.GenericRecordUtil$getMask__104].bootstrap$()"
    - "[java.util.stream.Stream].mapToInt(java.util.function.ToIntFunction)"
    - "[java.util.stream.IntStream].toArray()"
    - "[net.jsign.poi.util.GenericRecordUtil$lambda_getBitsAsString_1__105].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:151,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "net.jsign.poi.util.GenericRecordUtil:151,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$getMask__104].bootstrap$()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:151,1"
      Dst: "[java.util.stream.Stream].mapToInt(java.util.function.ToIntFunction)"
    - Src: "net.jsign.poi.util.GenericRecordUtil:151,1"
      Dst: "[java.util.stream.IntStream].toArray()"
    - Src: "net.jsign.poi.util.GenericRecordUtil:152,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$lambda_getBitsAsString_1__105].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getBitsAsString(java.util.function.Supplier,int[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Supplier"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil$lambda_getBitsAsString_2__106].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:156,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$lambda_getBitsAsString_2__106].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].getEnumBitsAsString(java.util.function.Supplier,int[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.function.Supplier"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil$lambda_getEnumBitsAsString_3__107].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:160,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$lambda_getEnumBitsAsString_3__107].bootstrap$(java.util.function.Supplier,int[],java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].lambda$getEnumBitsAsString$3(java.util.function.Supplier,int[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:160,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:173"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:168,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:165,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].lambda$getBitsAsString$2(java.util.function.Supplier,int[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:156,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:173"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:168,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:165,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].lambda$getBitsAsString$1(java.util.function.Supplier,int[],java.lang.String[])"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    argCount: 3
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil:152,1"
      Dst: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag].<init>(java.util.function.Supplier,int[],java.lang.String[],boolean)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.function.Supplier"
    - "int[]"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:170"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:173"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:168,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:165,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:169,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.poi.util.GenericRecordUtil$AnnotatedFlag:174,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.poi.util.GenericRecordUtil].lambda$safeEnum$0(int,java.lang.Enum[],java.lang.Enum)"
    functionSourceFile: "net.jsign.poi.util.GenericRecordUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Enum"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.Enum[]"
    - "java.lang.Enum"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:147"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:146"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.util.GenericRecordUtil:147"
      Branch Sides:
      - BranchSide: "net.jsign.poi.util.GenericRecordUtil:146"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].detach()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiplyAddToExt(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 118
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiplyAddToExt(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].negate(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "sub(int[],int[],int[])"
        - "isZero(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].isZero(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mulAddTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].incAt(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs:
        - "add33To(int,int,int[])"
        - "gte(int[],int[])"
        - "mul33Add(int,int[],int,int[],int,int[],int)"
        - "mul33DWordAdd(int,long,int[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33Add(int,int[],int,int[],int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33DWordAdd(int,long,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul33WordAdd(int,int,int[],int)"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul33WordAdd(int,int,int[],int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].createExt()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].mul(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].sub(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub33From(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add33To(int,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].isOne(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].threeTimes()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].threeTimes()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].square(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].addBothTo(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].reduce32(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].multiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point].negate()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].createCurve()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11].createParameters()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves$11:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedInputStream"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:232"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:232,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:233,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedInputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:252"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:251"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:251,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:252,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedOutputStream"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:270"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:269"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:269,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:270,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.OutputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedOutputStream"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:289"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:288"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:288,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:289,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:303"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:303,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.Reader,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:317"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:317,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedWriter"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:330"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:330,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].buffer(java.io.Writer,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedWriter"
    argCount: 2
    argTypes:
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedWriter].<init>(java.io.Writer,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:344"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:344,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:354,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].charArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].charArray(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:378,1"
      Dst: "[net.jsign.commons.io.IOUtils].charArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].charArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].charArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].clear()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].remove()"
    - "[java.util.Arrays].fill(byte[],byte)"
    - "[java.util.Arrays].fill(char[],char)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:403,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    - Src: "net.jsign.commons.io.IOUtils:405,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.commons.io.IOUtils:406,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].close(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 416
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[java.io.Closeable].close()"
    functionUses: 1
    ICount: 4
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:417"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:420"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:419"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:418,1"
      Dst: "[java.io.Closeable].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].close(java.io.Closeable[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$close__108].bootstrap$()"
    - "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:430,1"
      Dst: "[net.jsign.commons.io.IOUtils$close__108].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:430,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].forAll(net.jsign.commons.io.function.IOConsumer,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].close(java.io.Closeable,net.jsign.commons.io.function.IOConsumer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 441
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Closeable"
    - "net.jsign.commons.io.function.IOConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream$handleIOException__1].accept(java.lang.Object)"
    - "[java.io.Closeable].close()"
    - "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:442"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:450"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:446"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:451"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:444,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.IOUtils:447,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.HttpURLConnection].disconnect()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:460"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:463"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:462"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:461,1"
      Dst: "[java.net.HttpURLConnection].disconnect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 578
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Closeable"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.LineIterator$addSuppressed__9].accept(java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].accept(java.lang.Object)"
    - "[java.io.Closeable].close()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:579"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:583"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:588"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:581,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.IOUtils:584,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:516,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 578
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Closeable"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.LineIterator$addSuppressed__9].accept(java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].accept(java.lang.Object)"
    - "[java.io.Closeable].close()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:579"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:583"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:588"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:581,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.IOUtils:584,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].stream(java.lang.Object[])"
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.util.stream.Stream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:566"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:569"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:567,1"
      Dst: "[java.util.Arrays].stream(java.lang.Object[])"
    - Src: "net.jsign.commons.io.IOUtils:567,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$closeQuietly__110].bootstrap$()"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:816"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:819"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:818"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:817,1"
      Dst: "[net.jsign.commons.io.IOUtils$closeQuietly__110].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:817,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 578
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Closeable"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.zip.ZipFile].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.cat.CatalogFile].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.function.IOBaseStream].close()"
    - "[net.jsign.script.SignableScript].close()"
    - "[net.jsign.commons.io.input.BoundedInputStream].close()"
    - "[net.jsign.mscab.MSCabinetFile].close()"
    - "[net.jsign.script.JScript].close()"
    - "[net.jsign.commons.io.LineIterator].close()"
    - "[net.jsign.commons.io.input.CharSequenceInputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.AppendableWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.script.PowerShellScript].close()"
    - "[net.jsign.commons.io.input.CharSequenceReader].close()"
    - "[net.jsign.commons.io.output.NullWriter].close()"
    - "[net.jsign.json-io.util.io.JsonWriter].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.script.WindowsScript].close()"
    - "[net.jsign.commons.io.input.ProxyInputStream].close()"
    - "[net.jsign.commons.io.input.ReaderInputStream].close()"
    - "[net.jsign.msi.MSIFile].close()"
    - "[net.jsign.pe.PEFile].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.navx.NAVXFile].close()"
    - "[net.jsign.json-io.util.io.JsonReader].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].close()"
    - "[net.jsign.script.VBScript].close()"
    - "[net.jsign.bouncycastle.jcajce.io.CipherInputStream].close()"
    - "[net.jsign.script.PowerShellXMLScript].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSFileSystem].close()"
    - "[net.jsign.poi.poifs.nio.FileBackedDataSource].close()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[net.jsign.msi.MSIFile$1].close()"
    - "[net.jsign.commons.io.LineIterator$addSuppressed__9].accept(java.lang.Object)"
    - "[net.jsign.log4j.util.ProviderUtil$add__14].accept(java.lang.Object)"
    - "[java.io.Closeable].close()"
    - "[java.util.function.Consumer].accept(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:579"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:583"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:588"
        BranchSideFuncs:
        - "accept(java.lang.Object)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:581,1"
      Dst: "[java.io.Closeable].close()"
    - Src: "net.jsign.commons.io.IOUtils:584,1"
      Dst: "[java.util.function.Consumer].accept(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:620,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.lang.Iterable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$closeQuietly__109].bootstrap$()"
    - "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:634"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:637"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:636"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:635,1"
      Dst: "[net.jsign.commons.io.IOUtils$closeQuietly__109].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:635,1"
      Dst: "[java.lang.Iterable].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:670,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:703,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.nio.channels.Selector)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:736,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.net.ServerSocket)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:769,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.net.Socket)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:802,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$closeQuietly__110].bootstrap$()"
    - "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:816"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:819"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:818"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:817,1"
      Dst: "[net.jsign.commons.io.IOUtils$closeQuietly__110].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:817,1"
      Dst: "[java.util.stream.Stream].forEach(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:850,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].closeQ(java.io.Closeable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:471,1"
      Dst: "[net.jsign.commons.io.IOUtils].closeQuietly(java.io.Closeable,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].consume(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:866,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].consume(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:882,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1586
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    - "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.io.InputStream,java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - "[net.jsign.commons.io.IOUtils].byteArray()"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:902"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:905"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:904"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:906"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:905"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:910"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:909"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:920"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:917"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:921"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:929"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:924"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:923"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:922"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:928"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:927"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:926"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:925"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:926"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:925"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:930"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:938"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:933"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:932"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:931"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:934"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:937"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:936"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:935"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:934"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:935"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:934"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:939"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:918"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:917"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:910,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:912,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray()"
    - Src: "net.jsign.commons.io.IOUtils:923,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:926,1"
      Dst: "[java.io.InputStream].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 30
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:948"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:956"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:955"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:949"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:952"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:951"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:952"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:948"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:947"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:956"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:955"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:948,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:952,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:952,1"
      Dst: "[java.util.Objects].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.io.Reader,java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - "[net.jsign.commons.io.IOUtils].charArray()"
    - "[java.io.Reader].read(char[],int,int)"
    - "[java.io.Reader].read()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:973"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:976"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:975"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:976"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:977"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:976"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:976"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:981"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:980"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:991"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:989"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:988"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:992"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1000"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:995"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:994"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:993"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:996"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:999"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:998"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:997"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:996"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:997"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:996"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1001"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1009"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1004"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1003"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1002"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1005"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1008"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1007"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1006"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1005"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1006"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1005"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1010"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:989"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:988"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:981,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - Src: "net.jsign.commons.io.IOUtils:983,1"
      Dst: "[net.jsign.commons.io.IOUtils].charArray()"
    - Src: "net.jsign.commons.io.IOUtils:994,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:997,1"
      Dst: "[java.io.Reader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 12
    BBCount: 30
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1731
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].charArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].charArray(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:378,1"
      Dst: "[net.jsign.commons.io.IOUtils].charArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.stream.Stream"
    - "java.util.stream.Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.stream.BaseStream].iterator()"
    - "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1022"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1021"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1022"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1023"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1022"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1022"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1025"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1024"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1025,1"
      Dst: "[java.util.stream.BaseStream].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:1025,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.Iterator,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.BufferedReader"
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].lines()"
    - "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1030"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1033"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1032"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1034"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1033"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1033"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1036"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1035"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1036,1"
      Dst: "[java.io.BufferedReader].lines()"
    - Src: "net.jsign.commons.io.IOUtils:1036,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEquals(java.util.stream.Stream,java.util.stream.Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.Reader,java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1056"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1059"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1058"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1059"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1060"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1059"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1059"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1062"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1061"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1062,1"
      Dst: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - Src: "net.jsign.commons.io.IOUtils:1062,1"
      Dst: "[net.jsign.commons.io.IOUtils].contentEqualsIgnoreEOL(java.io.BufferedReader,java.io.BufferedReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1084
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1086"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1084"
        BranchSideFuncs:
        - "copyLarge(java.io.InputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1085,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1106
    functionDepth: 1
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1107,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:1107,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1131,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:1131,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1155,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1155,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1183,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1183,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1155,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.ByteArrayOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.commons.io.input.QueueInputStream"
    argCount: 1
    argTypes:
    - "java.io.ByteArrayOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.input.QueueInputStream].<init>()"
    - "[net.jsign.commons.io.input.QueueInputStream].newQueueOutputStream()"
    - "[java.io.ByteArrayOutputStream].writeTo(java.io.OutputStream)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1211,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1212,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:1213,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].newQueueOutputStream()"
    - Src: "net.jsign.commons.io.IOUtils:1213,1"
      Dst: "[java.io.ByteArrayOutputStream].writeTo(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:149,1"
      Dst: "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:149,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:160,1"
      Dst: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].<init>(java.util.concurrent.BlockingQueue,java.time.Duration)"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.concurrent.BlockingQueue"
    - "java.time.Duration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.time.Duration].toNanos()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:169,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "net.jsign.commons.io.input.QueueInputStream:170,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.input.QueueInputStream:171,1"
      Dst: "[java.time.Duration].toNanos()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.input.QueueInputStream].newQueueOutputStream()"
    functionSourceFile: "net.jsign.commons.io.input.QueueInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.QueueOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.QueueOutputStream].<init>(java.util.concurrent.BlockingQueue)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.input.QueueInputStream:198,1"
      Dst: "[net.jsign.commons.io.output.QueueOutputStream].<init>(java.util.concurrent.BlockingQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.lang.Appendable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.lang.Appendable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.CharBuffer].allocate(int)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.lang.Appendable,java.nio.CharBuffer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1238,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.IOUtils:1238,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.lang.Appendable,java.nio.CharBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.lang.Appendable,java.nio.CharBuffer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.lang.Appendable"
    - "java.nio.CharBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Reader].read(java.nio.CharBuffer)"
    - "[java.nio.CharBuffer].flip()"
    - "[java.lang.Appendable].append(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1259"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1263"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1259,1"
      Dst: "[java.io.Reader].read(java.nio.CharBuffer)"
    - Src: "net.jsign.commons.io.IOUtils:1260,1"
      Dst: "[java.nio.CharBuffer].flip()"
    - Src: "net.jsign.commons.io.IOUtils:1261,1"
      Dst: "[java.lang.Appendable].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.lang.Appendable,java.nio.CharBuffer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.lang.Appendable"
    - "java.nio.CharBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Reader].read(java.nio.CharBuffer)"
    - "[java.nio.CharBuffer].flip()"
    - "[java.lang.Appendable].append(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1259"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1264"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1263"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1259,1"
      Dst: "[java.io.Reader].read(java.nio.CharBuffer)"
    - Src: "net.jsign.commons.io.IOUtils:1260,1"
      Dst: "[java.nio.CharBuffer].flip()"
    - Src: "net.jsign.commons.io.IOUtils:1261,1"
      Dst: "[java.lang.Appendable].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1293,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:1293,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1320
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStreamWriter].flush()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1322,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:1325,1"
      Dst: "[java.io.OutputStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1381
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1382,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1320
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStreamWriter].flush()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1322,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:1325,1"
      Dst: "[java.io.OutputStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1358,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1358,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1320
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStreamWriter].flush()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1322,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:1325,1"
      Dst: "[java.io.OutputStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1381
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1382,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.net.URL,java.io.File)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].toPath()"
    - "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - "[net.jsign.commons.io.IOUtils].copy(java.net.URL,java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1409"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1406"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1407"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1407"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1406"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1407,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1407,1"
      Dst: "[java.io.File].toPath()"
    - Src: "net.jsign.commons.io.IOUtils:1407,1"
      Dst: "[java.nio.file.Files].newOutputStream(java.nio.file.Path,java.nio.file.OpenOption[])"
    - Src: "net.jsign.commons.io.IOUtils:1408,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.net.URL,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1409,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:1408,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.net.URL,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.net.URL].openStream()"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1432"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1429"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1430"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1430"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1429"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1430,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1430,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "net.jsign.commons.io.IOUtils:1431,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1432,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:1431,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1455
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1456,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.net.URL,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.net.URL].openStream()"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1432"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1429"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1430"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1430"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1429"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1430,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1430,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "net.jsign.commons.io.IOUtils:1431,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1432,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:1431,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1455
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1456,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1478
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.input.CharSequenceInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BoundedInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ReaderInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.UnsynchronizedByteArrayInputStream].read(byte[])"
    - "[net.jsign.poi.poifs.filesystem.DocumentInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.util.io.TeeInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.ProxyInputStream].read(byte[])"
    - "[net.jsign.commons.io.input.BOMInputStream].read(byte[])"
    - "[net.jsign.bouncycastle.jcajce.io.SignatureUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ClosedOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ProxyOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.DigestUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.cms.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.NullOutputStream].write(byte[],int,int)"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.WriterOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.io.MacUpdatingOutputStream].write(byte[],int,int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(byte[],int,int)"
    - "[net.jsign.bouncycastle.operator.jcajce.JcaDigestCalculatorProviderBuilder$DigestOutputStream].write(byte[],int,int)"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1483"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1487"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "net.jsign.commons.io.IOUtils:1486"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1479,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1483,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "net.jsign.commons.io.IOUtils:1484,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,long,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,long,long,byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1516,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:1516,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,long,long,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,long,long,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 5
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "long"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1545"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1548"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1547"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1548"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1551"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1550"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1553"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1556"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1553"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1556"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1561"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1546,1"
      Dst: "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    - Src: "net.jsign.commons.io.IOUtils:1558,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1559,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1563,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__113].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2513"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2515"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2512,1"
      Dst: "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__113].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:2512,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2411"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2420"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2419"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2418"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2417"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2412,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream,long,long,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 5
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    - "long"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1545"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1548"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1547"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1548"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1551"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1550"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1553"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1556"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1553"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1556"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1558"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1566"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1565"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1561"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1557"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1546,1"
      Dst: "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    - Src: "net.jsign.commons.io.IOUtils:1558,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1559,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1563,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1586
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    - "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - Src: "net.jsign.commons.io.IOUtils:1587,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1605
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.AppendableWriter].write(char[],int,int)"
    - "[net.jsign.commons.io.output.NullWriter].write(char[],int,int)"
    - "[java.io.Reader].read(char[])"
    - "[java.io.Writer].write(char[],int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1608"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1612"
        BranchSideFuncs:
        - "write(char[],int,int)"
      - BranchSide: "net.jsign.commons.io.IOUtils:1611"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1608,1"
      Dst: "[java.io.Reader].read(char[])"
    - Src: "net.jsign.commons.io.IOUtils:1609,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,long,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "long"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,long,long,char[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1638,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    - Src: "net.jsign.commons.io.IOUtils:1638,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,long,long,char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1731
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,long,long,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "long"
    argCount: 5
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    - "long"
    - "long"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    - "[java.io.Reader].read(char[],int,int)"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1663"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1666"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1669"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1668"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1670"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1673"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1670"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1673"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1675"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1683"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1675"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1683"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1678"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1664,1"
      Dst: "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    - Src: "net.jsign.commons.io.IOUtils:1675,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1676,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1680,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2593"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2596"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2595"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2592,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.Reader].read(char[],int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2475"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2478"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2479"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2487"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2483"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2486"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2485"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2481,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    - Src: "net.jsign.commons.io.IOUtils:2482,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2482,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1741,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1703
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],char)"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1704,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer,long,long,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "long"
    argCount: 5
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    - "long"
    - "long"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    - "[java.io.Reader].read(char[],int,int)"
    - "[java.io.Writer].write(char[],int,int)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1663"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1666"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1665"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1666"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1669"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1668"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1670"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1673"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1670"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1673"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1675"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1683"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1675"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1683"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1682"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1678"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1674"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1664,1"
      Dst: "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    - Src: "net.jsign.commons.io.IOUtils:1675,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1676,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:1680,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1693,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1703
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(char[],char)"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1704,1"
      Dst: "[java.util.Arrays].fill(char[],char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchByteArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1714,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchByteArrayWriteOnly()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1723,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].fill0(byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(byte[],byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1693,1"
      Dst: "[java.util.Arrays].fill(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArray()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1731
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "net.jsign.commons.io.IOUtils:1732,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].fill0(char[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1741,1"
      Dst: "[net.jsign.commons.io.IOUtils].fill0(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].length(byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1751
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1752"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1751"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].length(char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1763"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1762"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].length(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1774"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1773"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1774,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].length(java.lang.Object[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1784
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1785"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1784"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1820,1"
      Dst: "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1856,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1856,1"
      Dst: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lineIterator(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.LineIterator"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1889,1"
      Dst: "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.LineIterator].<init>(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.LineIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.LineIterator:86"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.LineIterator:89"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.LineIterator:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.LineIterator:84,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.io.LineIterator:85,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.LineIterator:89,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1905,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1928"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1927"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.function.IOTriFunction"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1946"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1949"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1948"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1950"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1958"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1957"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1953"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1956"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1955"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1928"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1927"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "net.jsign.commons.io.function.IOTriFunction"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1946"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1949"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1948"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1950"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1958"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1957"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1953"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1956"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1955"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:1947,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:1952,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1977"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1983"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1982"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1979"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1982"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1981"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1976,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.IOUtils:1978,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1999,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.Reader].read(char[],int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2022"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2021"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2023"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2031"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2030"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2026"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2029"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2028"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2025,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.Reader].read(char[],int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2022"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2021"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2023"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2031"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2030"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2026"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2029"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2028"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2025,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2050,1"
      Dst: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2073"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2076"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2075"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2072,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1925"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1928"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1927"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils$read__111].bootstrap$(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:1928,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(net.jsign.commons.io.function.IOTriFunction,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2073"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2076"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2075"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2072,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2094,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:2095,1"
      Dst: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.InputStream,byte[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.InputStream"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2073"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2076"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2075"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2072,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.InputStream,byte[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2074,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].remaining()"
    - "[net.jsign.commons.io.IOUtils].read(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2115"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2118"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2117"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2113,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.IOUtils:2114,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    - Src: "net.jsign.commons.io.IOUtils:2116,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2116,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2116,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2116,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.nio.channels.ReadableByteChannel,java.nio.ByteBuffer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1977"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1983"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1982"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:1979"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1982"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1981"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1976,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "net.jsign.commons.io.IOUtils:1978,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.Reader,char[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].readFully(java.io.Reader,char[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2135,1"
      Dst: "[net.jsign.commons.io.IOUtils].readFully(java.io.Reader,char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.Reader,char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2157"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2160"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2156,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.Reader].read(char[],int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2019"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2022"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2021"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2023"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2031"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2030"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2026"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2029"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2028"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2020,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2025,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].readFully(java.io.Reader,char[],int,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2157"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2160"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2159"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2156,1"
      Dst: "[net.jsign.commons.io.IOUtils].read(java.io.Reader,char[],int,int)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2158,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2179,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:2179,1"
      Dst: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - "[java.io.BufferedReader].lines()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.io.BufferedReader].lines()"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2666"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2665"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2666,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2222,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2222,1"
      Dst: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2198,1"
      Dst: "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].readLines(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - "[java.io.BufferedReader].lines()"
    - "[java.util.stream.Collectors].toList()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.io.BufferedReader].lines()"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.util.stream.Collectors].toList()"
    - Src: "net.jsign.commons.io.IOUtils:2241,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToByteArray(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2257,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToByteArray(java.lang.String,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToByteArray(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2274,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.commons.io.IOUtils:2274,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.lang.ClassLoader].getResource(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2343"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2343"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2344"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.ClassLoader].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - "[net.jsign.commons.io.CloseableURLConnection].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2890"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2888"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2888"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2888,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - Src: "net.jsign.commons.io.IOUtils:2890,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].close()"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.CloseableURLConnection"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].openConnection()"
    - "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "net.jsign.commons.io.CloseableURLConnection:40,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].<init>(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2902"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2903"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2902"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2903,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.commons.io.IOUtils:2904,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2905,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2904,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 2697
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2704"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2697"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
    - Branch String: "net.jsign.commons.io.IOUtils:2703"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2698"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:2697"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2698,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.commons.io.IOUtils:2698,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
    - Src: "net.jsign.commons.io.IOUtils:2702,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2703,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:2704,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2704,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2703,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 10
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.build.AbstractStreamBuilder].getBufferSize()"
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder:82,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOConsumer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22:-1,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.io.function.IOFunction"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].<init>(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23:-1,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].<init>(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].<init>(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ThresholdingOutputStream].<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
    functionSourceFile: "net.jsign.commons.io.output.ThresholdingOutputStream"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "net.jsign.commons.io.function.IOConsumer"
    - "net.jsign.commons.io.function.IOFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOConsumer].noop()"
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.ThresholdingOutputStream:93"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:91"
        BranchSideFuncs:
        - "noop()"
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:90"
        BranchSideFuncs:
        - "noop()"
    - Branch String: "net.jsign.commons.io.output.ThresholdingOutputStream:94"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:93"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:92"
        BranchSideFuncs:
        - "noop()"
    - Branch String: "net.jsign.commons.io.output.ThresholdingOutputStream:95"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:94"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ThresholdingOutputStream:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:91,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:93,1"
      Dst: "[net.jsign.commons.io.function.IOConsumer].noop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1084
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1086"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1084"
        BranchSideFuncs:
        - "copyLarge(java.io.InputStream,java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1085,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream:184,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    functionSourceFile: "net.jsign.commons.io.output.ThresholdingOutputStream"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].flush()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].getStream()"
    - "[java.io.OutputStream].close()"
    functionUses: 22
    ICount: 7
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:121,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].flush()"
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:126,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].getStream()"
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:126,1"
      Dst: "[java.io.OutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.ThresholdingOutputStream].flush()"
    functionSourceFile: "net.jsign.commons.io.output.ThresholdingOutputStream"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ClosedOutputStream].flush()"
    - "[net.jsign.commons.io.output.WriterOutputStream].flush()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].flush()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].flush()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].flush()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].getStream()"
    - "[java.io.OutputStream].flush()"
    functionUses: 7
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:138,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].getStream()"
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:138,1"
      Dst: "[java.io.OutputStream].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ThresholdingOutputStream].getStream()"
    functionSourceFile: "net.jsign.commons.io.output.ThresholdingOutputStream"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].getOutputStream()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:172,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].getOutputStream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ThresholdingOutputStream].getOutputStream()"
    functionSourceFile: "net.jsign.commons.io.output.ThresholdingOutputStream"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ThresholdingOutputStream:159,1"
      Dst: "[net.jsign.commons.io.function.IOFunction].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.CloseableURLConnection].close()"
    functionSourceFile: "net.jsign.commons.io.CloseableURLConnection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.CloseableURLConnection:57,1"
      Dst: "[net.jsign.commons.io.IOUtils].close(java.net.URLConnection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToByteArray(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2274,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.commons.io.IOUtils:2274,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToString(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToString(java.lang.String,java.nio.charset.Charset,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2291,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToString(java.lang.String,java.nio.charset.Charset,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToString(java.lang.String,java.nio.charset.Charset,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2309,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.commons.io.IOUtils:2309,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.lang.ClassLoader].getResource(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2343"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2343"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2344"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.ClassLoader].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToString(java.lang.String,java.nio.charset.Charset,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2309,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    - Src: "net.jsign.commons.io.IOUtils:2309,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.net.URL"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2324,1"
      Dst: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.lang.ClassLoader].getResource(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2343"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2343"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2344"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.ClassLoader].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].resourceToURL(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.net.URL"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.lang.ClassLoader].getResource(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2343"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2343"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2342"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2344"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2347"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2346"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2343,1"
      Dst: "[java.lang.ClassLoader].getResource(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2345,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__112].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2372,1"
      Dst: "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__112].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:2372,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2411"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2420"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2419"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2418"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2417"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2412,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2411"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2420"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2419"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2418"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2417"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2412,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.nio.channels.ReadableByteChannel,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2436"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2439"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2438"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2441"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2450"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2449"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2445"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2447"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2439,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2439,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.IOUtils:2442,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.commons.io.IOUtils:2443,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.commons.io.IOUtils:2444,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.Reader].read(char[],int,int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2475"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2478"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2477"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2479"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2487"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2483"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2486"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2485"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2476,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2481,1"
      Dst: "[net.jsign.commons.io.IOUtils].getScratchCharArrayWriteOnly()"
    - Src: "net.jsign.commons.io.IOUtils:2482,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2482,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__113].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2513"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2516"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2515"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2512,1"
      Dst: "[net.jsign.commons.io.IOUtils$getScratchByteArrayWriteOnly__113].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:2512,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2514,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.io.InputStream,long,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2542"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2545"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2544"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2546"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2549"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2548"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2543,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2543,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2543,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2543,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2543,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2545,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    - Src: "net.jsign.commons.io.IOUtils:2547,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.io.InputStream,long,java.util.function.Supplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "long"
    - "java.util.function.Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.function.Supplier].get()"
    - "[java.lang.Math].min(long,long)"
    - "[java.io.InputStream].read(byte[],int,int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2402"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2410"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2409"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2411"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2420"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2419"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2415"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2418"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2417"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2403,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2412,1"
      Dst: "[java.util.function.Supplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2414,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.nio.channels.ReadableByteChannel,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].skip(java.nio.channels.ReadableByteChannel,long)"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2562"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2565"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2564"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2566"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2569"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2568"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2563,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2563,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2563,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2563,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2563,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2565,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.nio.channels.ReadableByteChannel,long)"
    - Src: "net.jsign.commons.io.IOUtils:2567,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].skip(java.nio.channels.ReadableByteChannel,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].min(long,long)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2436"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2439"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2438"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2441"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2450"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2449"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2445"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2448"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2447"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2437,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2439,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "net.jsign.commons.io.IOUtils:2439,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "net.jsign.commons.io.IOUtils:2442,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "net.jsign.commons.io.IOUtils:2443,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "net.jsign.commons.io.IOUtils:2444,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.commons.io.IOUtils].skipFully(java.io.Reader,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.EOFException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2593"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2596"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2595"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2592,1"
      Dst: "[net.jsign.commons.io.IOUtils].skip(java.io.Reader,long)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2594,1"
      Dst: "[java.io.EOFException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedInputStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2623,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:54,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2652,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toBufferedInputStream(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:82,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:83,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].write(java.io.InputStream)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toInputStream()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:85,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:84,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2666"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2665"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2666,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toBufferedReader(java.io.Reader,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.BufferedReader"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2681"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2680"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2681,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 2697
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2704"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2697"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
    - Branch String: "net.jsign.commons.io.IOUtils:2703"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2698"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
      - BranchSide: "net.jsign.commons.io.IOUtils:2697"
        BranchSideFuncs:
        - "bootstrap$()"
        - "<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
        - "bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
        - "builder()"
        - "toByteArray()"
        - "get()"
        - "copy(java.io.InputStream,java.io.OutputStream)"
        - "close()"
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2698,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].builder()"
    - Src: "net.jsign.commons.io.IOUtils:2698,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream$Builder].get()"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_0__22].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toByteArray_1__23].bootstrap$(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2699,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].<init>(int,net.jsign.commons.io.function.IOConsumer,net.jsign.commons.io.function.IOFunction)"
    - Src: "net.jsign.commons.io.IOUtils:2702,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2703,1"
      Dst: "[net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:2704,1"
      Dst: "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2704,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2703,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 10
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$read__114].bootstrap$(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2719"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2722"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2721"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[net.jsign.commons.io.IOUtils$read__114].bootstrap$(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOTriFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2759"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2763"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2762"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2763"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2767"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2766"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2775"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2779"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2778"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2767,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.commons.io.IOUtils:2776,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream,long)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2742"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2745"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2744"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2743,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2743,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2743,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "net.jsign.commons.io.IOUtils:2743,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2743,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2745,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$read__114].bootstrap$(java.io.InputStream)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2719"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2722"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2721"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[net.jsign.commons.io.IOUtils$read__114].bootstrap$(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2722,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(net.jsign.commons.io.function.IOTriFunction,int)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOTriFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2759"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2763"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2762"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2763"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2767"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2766"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2771"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2775"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2774"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2775"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2779"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2778"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.IOUtils:2760,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2767,1"
      Dst: "[net.jsign.commons.io.IOUtils].byteArray(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[net.jsign.commons.io.function.IOTriFunction].apply(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:2771,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "net.jsign.commons.io.IOUtils:2776,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2798,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:2798,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 2816
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2817,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2818,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:2820,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:93,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>(int)"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.ByteArrayOutputStream:104"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:107"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.ByteArrayOutputStream:106"
        BranchSideFuncs:
        - "needNewBuffer(int)"
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:103,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:108,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].needNewBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1320
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStreamWriter].flush()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1321,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1322,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:1325,1"
      Dst: "[java.io.OutputStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    functionSourceFile: "net.jsign.commons.io.output.ByteArrayOutputStream"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.ByteArrayOutputStream:127,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].toByteArrayImpl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 2816
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2817,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2818,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:2820,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2844,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2844,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.Reader,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 2816
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2817,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2818,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[net.jsign.commons.io.output.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.commons.io.IOUtils:2820,1"
      Dst: "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2819,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2862,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:2862,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URI)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toURL()"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2875,1"
      Dst: "[java.net.URI].toURL()"
    - Src: "net.jsign.commons.io.IOUtils:2875,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - "[net.jsign.commons.io.CloseableURLConnection].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2890"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2888"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2888"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2888,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - Src: "net.jsign.commons.io.IOUtils:2890,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].close()"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - "[net.jsign.commons.io.CloseableURLConnection].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2890"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2888"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2888"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2887"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2888,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].open(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    - Src: "net.jsign.commons.io.IOUtils:2890,1"
      Dst: "[net.jsign.commons.io.CloseableURLConnection].close()"
    - Src: "net.jsign.commons.io.IOUtils:2889,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].toByteArray(java.net.URLConnection)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.URLConnection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URLConnection].getInputStream()"
    - "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:2905"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2902"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:2903"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:2903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:2902"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2903,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "net.jsign.commons.io.IOUtils:2904,1"
      Dst: "[net.jsign.commons.io.IOUtils].toByteArray(java.io.InputStream)"
    - Src: "net.jsign.commons.io.IOUtils:2905,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:2904,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2925,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:2925,1"
      Dst: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.CharArrayWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[java.io.CharArrayWriter].toCharArray()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2945,1"
      Dst: "[java.io.CharArrayWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2946,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2947,1"
      Dst: "[java.io.CharArrayWriter].toCharArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1154,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:1155,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.CharArrayWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[java.io.CharArrayWriter].toCharArray()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2945,1"
      Dst: "[java.io.CharArrayWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2946,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2947,1"
      Dst: "[java.io.CharArrayWriter].toCharArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2971,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:2971,1"
      Dst: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.CharArrayWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[java.io.CharArrayWriter].toCharArray()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2945,1"
      Dst: "[java.io.CharArrayWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2946,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:2947,1"
      Dst: "[java.io.CharArrayWriter].toCharArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toCharArray(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.CharArrayWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[java.io.CharArrayWriter].toCharArray()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2988,1"
      Dst: "[java.io.CharArrayWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:2989,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:2990,1"
      Dst: "[java.io.CharArrayWriter].toCharArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1381
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1382,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3004,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3004,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3035,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3035,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3017,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3049,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3049,1"
      Dst: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3062,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toInputStream(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.io.InputStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3080,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3080,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3080,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(byte[])"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3095,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3095,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3112,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3112,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3131,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3131,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3177,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3177,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3150,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3151,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.InputStream,java.io.Writer,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3153,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3152,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils$lambda_toString_2__115].bootstrap$()"
    - Src: "net.jsign.commons.io.IOUtils:3196,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset,net.jsign.commons.io.function.IOSupplier)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "net.jsign.commons.io.function.IOSupplier"
    - "java.nio.charset.Charset"
    - "net.jsign.commons.io.function.IOSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.function.IOSupplier].get()"
    - "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - "[java.io.InputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3218"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3222"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3221"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3223"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3220"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3221"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3219"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3218"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3219,1"
      Dst: "[net.jsign.commons.io.function.IOSupplier].get()"
    - Src: "net.jsign.commons.io.IOUtils:3222,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3223,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "net.jsign.commons.io.IOUtils:3219,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.io.Reader)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3239,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    - Src: "net.jsign.commons.io.IOUtils:3240,1"
      Dst: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    - Src: "net.jsign.commons.io.IOUtils:3241,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3242,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    - Src: "net.jsign.commons.io.IOUtils:3241,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:47,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:48,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].copy(java.io.Reader,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: 1381
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:1383"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:1386"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:1385"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:1382,1"
      Dst: "[net.jsign.commons.io.IOUtils].copyLarge(java.io.Reader,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].toString()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].close()"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URI)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3256,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3256,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toURL()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[java.net.URI].toURL()"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toURL()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[java.net.URI].toURL()"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URI"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3283,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3283,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URI,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toURL()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[java.net.URI].toURL()"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3269,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3297,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3297,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3324,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3324,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].toString(java.net.URL,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.URL"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils$openStream__116].bootstrap$(java.net.URL)"
    - Src: "net.jsign.commons.io.IOUtils:3310,1"
      Dst: "[net.jsign.commons.io.IOUtils].toString(net.jsign.commons.io.function.IOSupplier,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3339"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3342"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3341"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3340,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3361,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3361,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3380"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.Charsets:183"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.Charsets:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:183,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3380"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "java.io.Writer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3406,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3406,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(byte[],java.io.Writer,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "java.io.Writer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3380"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3383"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3382"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3381,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3428,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3428,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3451"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3451"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3476,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3476,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3448"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3451"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3450"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "net.jsign.commons.io.IOUtils:3449,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(char[],java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(char[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3490"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3493"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3492"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3491,1"
      Dst: "[java.io.Writer].write(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3513,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3513,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3532"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3535"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3534"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3532"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3535"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3534"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3558,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3558,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3532"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3535"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3534"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3533,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.CharSequence,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3571"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3574"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3573"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3572,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3572,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3655"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3658"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3657"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3656,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3594,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3594,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3642,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3642,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3655"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3658"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3657"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3656,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuffer"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.OutputStream,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3678,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.OutputStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].toString()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3704"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3707"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3706"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.Charsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.Charsets:206,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].encode(java.lang.String)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3613"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3618"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.Channels].newChannel(java.io.OutputStream)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.charset.Charset].encode(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3617,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuffer"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].toString()"
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3704"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3707"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3706"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3705,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].write(java.lang.StringBuffer,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuffer"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3722"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3725"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3724"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3723,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3723,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.commons.io.IOUtils].writeChunked(byte[],java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3741"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3751"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3750"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3744"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3751"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3750"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3745,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.commons.io.IOUtils:3746,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].writeChunked(char[],java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.io.Writer].write(char[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3766"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3776"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3775"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3769"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3776"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3775"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3770,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "net.jsign.commons.io.IOUtils:3771,1"
      Dst: "[java.io.Writer].write(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3794,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "net.jsign.commons.io.IOUtils:3794,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].lineSeparator()"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3817"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3820"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3823"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3822"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3823"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3826"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3828"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3834"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3833"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3829"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3832"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3831"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3821,1"
      Dst: "[java.lang.System].lineSeparator()"
    - Src: "net.jsign.commons.io.IOUtils:3823,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3827,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3832,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].lineSeparator()"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].toString()"
    - "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - "[java.io.OutputStream].write(byte[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3817"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3820"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3819"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3820"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3823"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3822"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3823"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3826"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3828"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3834"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3833"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3829"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3832"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3831"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3821,1"
      Dst: "[java.lang.System].lineSeparator()"
    - Src: "net.jsign.commons.io.IOUtils:3823,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "net.jsign.commons.io.IOUtils:3827,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:3828,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3830,1"
      Dst: "[net.jsign.commons.io.IOUtils].write(java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    - Src: "net.jsign.commons.io.IOUtils:3832,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.lang.String)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.OutputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3856,1"
      Dst: "[net.jsign.commons.io.Charsets].toCharset(java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3856,1"
      Dst: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.OutputStream,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].writeLines(java.util.Collection,java.lang.String,java.io.Writer)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].lineSeparator()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3872"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3875"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3874"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3875"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3878"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3877"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3878"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3884"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3883"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3879"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3882"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3881"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3876,1"
      Dst: "[java.lang.System].lineSeparator()"
    - Src: "net.jsign.commons.io.IOUtils:3878,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "net.jsign.commons.io.IOUtils:3878,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.io.IOUtils:3878,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.io.IOUtils:3880,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "net.jsign.commons.io.IOUtils:3880,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[net.jsign.commons.io.IOUtils].writer(java.lang.Appendable)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 1
    argTypes:
    - "java.lang.Appendable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[net.jsign.commons.io.output.StringBuilderWriter].<init>(java.lang.StringBuilder)"
    - "[net.jsign.commons.io.output.AppendableWriter].<init>(java.lang.Appendable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.IOUtils:3897"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3900"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3899"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.io.IOUtils:3900"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.IOUtils:3903"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.IOUtils:3902"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3896,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "net.jsign.commons.io.IOUtils:3901,1"
      Dst: "[net.jsign.commons.io.output.StringBuilderWriter].<init>(java.lang.StringBuilder)"
    - Src: "net.jsign.commons.io.IOUtils:3903,1"
      Dst: "[net.jsign.commons.io.output.AppendableWriter].<init>(java.lang.Appendable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.commons.io.output.StringBuilderWriter].<init>(java.lang.StringBuilder)"
    functionSourceFile: "net.jsign.commons.io.output.StringBuilderWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.io.output.StringBuilderWriter:68"
      Branch Sides:
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:67"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.io.output.StringBuilderWriter:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:67,1"
      Dst: "[java.io.Writer].<init>()"
    - Src: "net.jsign.commons.io.output.StringBuilderWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.io.output.AppendableWriter].<init>(java.lang.Appendable)"
    functionSourceFile: "net.jsign.commons.io.output.AppendableWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Appendable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.output.AppendableWriter:45,1"
      Dst: "[java.io.Writer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].<init>()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -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.jsign.commons.io.IOUtils:3912,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lambda$toString$2()"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:3197,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lambda$toByteArray$1(net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream,net.jsign.commons.io.output.ThresholdingOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.OutputStream"
    argCount: 2
    argTypes:
    - "net.jsign.commons.io.output.UnsynchronizedByteArrayOutputStream"
    - "net.jsign.commons.io.output.ThresholdingOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.io.IOUtils].lambda$toByteArray$0(net.jsign.commons.io.output.ThresholdingOutputStream)"
    functionSourceFile: "net.jsign.commons.io.IOUtils"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.io.output.ThresholdingOutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "net.jsign.commons.io.IOUtils:2700,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1EncodableVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(net.jsign.bouncycastle.asn1.ASN1Encodable[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].<init>(boolean,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Boolean].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1UTF8String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VideotexString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1PrintableString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Enumerated].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1External].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLSet].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1RelativeOID].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERSet].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1IA5String].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObject].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DLTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERGeneralizedTime].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1T61String].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERTaggedObject].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1BMPString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.DERNull].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1UTCTime].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BERBitString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GraphicString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1NumericString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1VisibleString].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.ASN1GeneralString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERBitString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.LazyEncodedSequence].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectIdentifier].encodedLength(boolean)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].encodedLength(boolean)"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1ObjectDescriptor].encodedLength(boolean)"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    functionUses: 28
    ICount: 19
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.BERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.BERSet:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.BERSet:-2"
        BranchSideFuncs:
        - "encodedLength(boolean)"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].encodedLength(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.asn1.BERSet].encode(net.jsign.bouncycastle.asn1.ASN1OutputStream,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.BERSet"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionUses: 33
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.BERSet:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeEncodingIL(boolean,int,net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1OutputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "net.jsign.bouncycastle.asn1.ASN1Encodable[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLOutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    - "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    functionUses: 4
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeIdentifier(boolean,int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].write(int)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1OutputStream:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OutputStream].writeElements(net.jsign.bouncycastle.asn1.ASN1Encodable[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].add(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].copy(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].equal(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].multiply(long[],long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long[]"
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].multiplyX(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].multiplyX8(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].one(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].square(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.raw.Interleave].expand64To128(long,long[],int)"
    functionSourceFile: "net.jsign.bouncycastle.math.raw.Interleave"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.raw.Interleave:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Bits].bitPermuteStep(long,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].x(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128].zero(long[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.modes.kgcm.KGCMUtil_128"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].<init>(net.jsign.bouncycastle.math.ec.ECCurve,int,int,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$1].createPoint(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].<init>(int,byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].getYCoord()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isOne()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].isZero()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT193FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP192R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP192K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT163FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP256K1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP384R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$F2m].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT131FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT233FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT283FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT113FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R2FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.djb.Curve25519FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecT571FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP160R1FieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 5
    ICount: 17
    EdgeCount: 239
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs:
        - "divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isZero()"
        - "add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
        - "isOne()"
        - "isInfinity()"
        - "multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].getCompressionYTilde()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].testBitZero()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 98
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].divide(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].fromBigInteger(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].squarePlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 27
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getRawYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].addOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiplyPlusProduct(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].multiply(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT409K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9].createCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - "[java.math.BigInteger].valueOf(long)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$000(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].<init>(java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,java.math.BigInteger,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.ECCurve$Fp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - "[java.math.BigInteger].bitLength()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$AbstractFp].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].contains(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Properties].asInteger(java.lang.String,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].hasAnySmallFactors(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].getSecureRandom()"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].access$000(int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.Primes].isMRProbablePrime(java.math.BigInteger,java.security.SecureRandom,int)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.util.BigIntegers$Cache].add(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$Fp].calculateResidue(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$Fp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.ECCurve$Fp:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve$Fp].fromBigInteger(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9].createParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getCurve()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getOrder()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getCofactor()"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves$9:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.asn1.x9.X9ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isFpCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getField()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.FiniteField].getCharacteristic()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECAlgorithms].isF2mCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.PolynomialExtensionField].getMinimalPolynomial()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.math.field.Polynomial].getExponentsPresent()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9FieldID].<init>(int,int,int,int)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[net.jsign.commons.cli.CommandLine].<init>()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:46,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].hasOption(char)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:78,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.CommandLine:78,1"
      Dst: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].hasOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:67,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionObject(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:93,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getType()"
    - "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:116"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:116"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:113,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:114,1"
      Dst: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:121,1"
      Dst: "[net.jsign.commons.cli.Option].getType()"
    - Src: "net.jsign.commons.cli.CommandLine:121,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:144,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:192"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:205"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:204"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:194"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:199"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:191,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:199,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.Option].getType()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Class)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:49,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Class)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.TypeHandler].createObject(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createNumber(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createDate(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createClass(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createFile(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createFiles(java.lang.String)"
    - "[net.jsign.commons.cli.TypeHandler].createURL(java.lang.String)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.TypeHandler:64"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:67"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:68"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:71"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:72"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:75"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:76"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:79"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:80"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:83"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:84"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:87"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:88"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:91"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:92"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:95"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.TypeHandler:96"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:70,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createObject(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:74,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createNumber(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:78,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createDate(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:82,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createClass(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:86,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createFile(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:94,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createFiles(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:98,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createURL(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[net.jsign.commons.cli.TypeHandler].createObject(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    - "[java.lang.Class].newInstance()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:119,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.TypeHandler:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.TypeHandler:123,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:128,1"
      Dst: "[java.lang.Class].newInstance()"
    - Src: "net.jsign.commons.cli.TypeHandler:132,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.commons.cli.TypeHandler:132,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.ParseException:40,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createNumber(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Number"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.Double].valueOf(java.lang.String)"
    - "[java.lang.Long].valueOf(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.TypeHandler:148"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.TypeHandler:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:148,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.commons.cli.TypeHandler:150,1"
      Dst: "[java.lang.Double].valueOf(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:152,1"
      Dst: "[java.lang.Long].valueOf(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:156,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.commons.cli.TypeHandler:156,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.TypeHandler].createDate(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:192,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createClass(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:171,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.TypeHandler:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.TypeHandler:175,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.TypeHandler].createFile(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:222,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createFiles(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.io.File[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:239,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.TypeHandler].createURL(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.TypeHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.net.URL"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.TypeHandler:206,1"
      Dst: "[java.net.URL].<init>(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:210,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.TypeHandler:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.TypeHandler:210,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.TypeHandler:210,1"
      Dst: "[net.jsign.commons.cli.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - "[net.jsign.commons.cli.Option].getType()"
    - "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:116"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:117"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:116"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:113,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:114,1"
      Dst: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:121,1"
      Dst: "[net.jsign.commons.cli.Option].getType()"
    - Src: "net.jsign.commons.cli.CommandLine:121,1"
      Dst: "[net.jsign.commons.cli.TypeHandler].createValue(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionObject(char)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.CommandLine].getOptionObject(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:132,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.CommandLine:132,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionObject(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionObject(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:93,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getParsedOptionValue(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.commons.cli.CommandLine:97,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:144,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(char)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:158,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.CommandLine:158,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:144,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.Option].getValuesList()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:180"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:170,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[net.jsign.commons.cli.Option].getValuesList()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.commons.cli.CommandLine].resolveOption(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.commons.cli.Option"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:192"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:205"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:204"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:194"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:198"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:199"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:191,1"
      Dst: "[net.jsign.commons.cli.Util].stripLeadingHyphens(java.lang.String)"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:192,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:194,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:199,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValues(char)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:217,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.CommandLine:217,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.Option].getValuesList()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:172"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:180"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:175"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:174"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:177"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:180"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:170,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:172,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:174,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[net.jsign.commons.cli.Option].getValuesList()"
    - Src: "net.jsign.commons.cli.CommandLine:176,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.CommandLine:180,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:231,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:146"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:144,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValues(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(char,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:247,1"
      Dst: "[java.lang.String].valueOf(char)"
    - Src: "net.jsign.commons.cli.CommandLine:247,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:233"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:231,1"
      Dst: "[net.jsign.commons.cli.CommandLine].getOptionValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptionProperties(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Properties"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Properties].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.commons.cli.Option].getOpt()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[net.jsign.commons.cli.Option].getLongOpt()"
    - "[net.jsign.commons.cli.Option].getValuesList()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.commons.cli.CommandLine:267"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:285"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.commons.cli.CommandLine:284"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:269"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:270"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:269"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:282"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:272"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:276"
        BranchSideFuncs: []
    - Branch String: "net.jsign.commons.cli.CommandLine:277"
      Branch Sides:
      - BranchSide: "net.jsign.commons.cli.CommandLine:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:265,1"
      Dst: "[java.util.Properties].<init>()"
    - Src: "net.jsign.commons.cli.CommandLine:267,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.commons.cli.CommandLine:267,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.commons.cli.CommandLine:267,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.commons.cli.CommandLine:269,1"
      Dst: "[net.jsign.commons.cli.Option].getOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:269,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.commons.cli.CommandLine:269,1"
      Dst: "[net.jsign.commons.cli.Option].getLongOpt()"
    - Src: "net.jsign.commons.cli.CommandLine:271,1"
      Dst: "[net.jsign.commons.cli.Option].getValuesList()"
    - Src: "net.jsign.commons.cli.CommandLine:272,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.CommandLine:275,1"
      Dst: "[java.util.List].get(int)"
    - Src: "net.jsign.commons.cli.CommandLine:275,1"
      Dst: "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[net.jsign.commons.cli.Option].getOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].getLongOpt()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.Option].getValuesList()"
    functionSourceFile: "net.jsign.commons.cli.Option"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getArgs()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:295,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.commons.cli.CommandLine:297,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getArgList()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].addArg(java.lang.String)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:341,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].addOption(net.jsign.commons.cli.Option)"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.commons.cli.Option"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:351,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].iterator()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:362,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.commons.cli.CommandLine].getOptions()"
    functionSourceFile: "net.jsign.commons.cli.CommandLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.commons.cli.Option[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.commons.cli.CommandLine:375,1"
      Dst: "[java.util.Collection].size()"
    - Src: "net.jsign.commons.cli.CommandLine:378,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECPoint:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.util.encoders.Hex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 16
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.HexEncoder].decodeStrict(java.lang.String,int,int)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.util.encoders.Hex:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].defineCurve(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$000(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].fromHex(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.encoders.Hex].decodeStrict(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.math.BigInteger].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$100(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureCurve(net.jsign.bouncycastle.math.ec.ECCurve)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].access$200(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].configureBasepoint(net.jsign.bouncycastle.math.ec.ECCurve,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].createPoint(java.math.BigInteger,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.WNafUtil].configureBasepoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].<init>(net.jsign.bouncycastle.math.ec.ECPoint,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:30,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:33,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setNodeColor(byte)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:34,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setPropertyType(byte)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:35,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setStartBlock(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].<init>(int,byte[],int)"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:46,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty].<init>(int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].setSize(int)"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].setSize(int)"
    - "[java.lang.Math].multiplyExact(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.RootProperty:58,1"
      Dst: "[java.lang.Math].multiplyExact(int,int)"
    - Src: "net.jsign.poi.poifs.property.RootProperty:58,1"
      Dst: "[net.jsign.poi.poifs.property.Property].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.RootProperty].getName()"
    functionSourceFile: "net.jsign.poi.poifs.property.RootProperty"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve,int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].getSize()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].lookup(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].lookupVar(int)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat128].create()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.sec.SecP128R1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP128R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,java.lang.String,long)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$UnresolvedReference:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].<init>(net.jsign.json-io.util.io.JsonObject,int,long)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.json-io.util.io.JsonObject"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Resolver$UnresolvedReference:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].access$0(net.jsign.json-io.util.io.Resolver$UnresolvedReference)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.json-io.util.io.JsonObject"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].access$1(net.jsign.json-io.util.io.Resolver$UnresolvedReference)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].access$2(net.jsign.json-io.util.io.Resolver$UnresolvedReference)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Resolver$UnresolvedReference].access$3(net.jsign.json-io.util.io.Resolver$UnresolvedReference)"
    functionSourceFile: "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.json-io.util.io.Resolver$UnresolvedReference"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedGenerator].<init>(net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].setDefiniteLengthEncoding(boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.Map].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 118
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.Map].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 118
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generateCounterSigners(net.jsign.bouncycastle.cms.SignerInformation)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.cms.SignerInformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.SignerInformation].getSignature()"
    functionSourceFile: "net.jsign.bouncycastle.cms.SignerInformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.SignerInformation:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSProcessableByteArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSProcessableByteArray:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedDataGenerator].generate(net.jsign.bouncycastle.cms.CMSTypedData,boolean)"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "net.jsign.bouncycastle.cms.CMSSignedData"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.cms.CMSTypedData"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - "[net.jsign.json-io.util.io.JsonObject].clear()"
    - "[net.jsign.commons.io.output.WriterOutputStream].close()"
    - "[net.jsign.commons.io.output.CloseShieldOutputStream].close()"
    - "[net.jsign.commons.io.output.ThresholdingOutputStream].close()"
    - "[net.jsign.commons.io.output.ProxyOutputStream].close()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringGenerator$BufferedBEROctetStream].close()"
    - "[net.jsign.bouncycastle.util.io.TeeOutputStream].close()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBuffer].close()"
    - "[net.jsign.poi.poifs.filesystem.DocumentOutputStream].close()"
    - "[net.jsign.commons.io.output.AbstractByteArrayOutputStream].close()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContent()"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].hasNext()"
    - "[net.jsign.commons.io.StreamIterator].hasNext()"
    - "[net.jsign.commons.io.LineIterator].hasNext()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.json-io.util.io.JsonObject].put(java.lang.Object,java.lang.Object)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - "[net.jsign.bouncycastle.cms.CMSProcessableByteArray].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.CMSSignedData$1].write(java.io.OutputStream)"
    - "[net.jsign.bouncycastle.cms.PKCS7ProcessableObject].write(java.io.OutputStream)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.LinkedHashSet].<init>()"
    - "[java.util.Map].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - "[java.io.OutputStream].close()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 118
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-2"
        BranchSideFuncs:
        - "generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
        - "hasNext()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
        - "next()"
        - "attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
        - "createDlSetFromList(java.util.List)"
        - "getCalculatedDigest()"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
        - "getAlgorithm()"
        - "getId()"
        - "getDigestAlgorithm()"
        - "<init>()"
        - "getSafeOutputStream(java.io.OutputStream)"
        - "convertToDlSet(java.util.Set)"
        - "<init>(java.lang.String,java.lang.Exception)"
        - "<init>(byte[])"
        - "<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "clear()"
        - "close()"
        - "<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
        - "createBerSetFromList(java.util.List)"
        - "getContent()"
        - "toASN1Structure()"
        - "put(java.lang.Object,java.lang.Object)"
        - "getContentType()"
        - "add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
        - "addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
        - "write(java.io.OutputStream)"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].clear()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].addDigestAlgs(java.util.Set,net.jsign.bouncycastle.cms.SignerInformation,net.jsign.bouncycastle.operator.DigestAlgorithmIdentifierFinder)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].toASN1Structure()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1EncodableVector].add(net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSTypedData].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].getContent()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].attachSignersToOutputStream(java.util.Collection,java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].getSafeOutputStream(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSProcessable].write(java.io.OutputStream)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.BEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].generate(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInfoGenerator].getCalculatedDigest()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[java.util.List].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createDlSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].createBerSetFromList(java.util.List)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.ASN1Encodable)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSUtils].convertToDlSet(java.util.Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DERSet].<init>(net.jsign.bouncycastle.asn1.ASN1EncodableVector)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].<init>(net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.cms.ContentInfo,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set,net.jsign.bouncycastle.asn1.ASN1Set)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedDataGenerator:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.CMSSignedData].<init>(net.jsign.bouncycastle.cms.CMSProcessable,net.jsign.bouncycastle.asn1.cms.ContentInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 11
    BBCount: 28
  - functionName: "[net.jsign.bouncycastle.cms.CMSSignedData].getSignerInfos()"
    functionSourceFile: "net.jsign.bouncycastle.cms.CMSSignedData"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.cms.SignerInformationStore"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    - "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - "[META-INF.versions.9.org.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.bouncycastle.util.Strings$StringListImpl].add(java.lang.Object)"
    - "[net.jsign.PrivateKeyUtils$1].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - "[net.jsign.commons.io.function.IOStream$1].next()"
    - "[net.jsign.log4j.ThreadContext$EmptyIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockByteBufferIterator].next()"
    - "[net.jsign.poi.poifs.filesystem.POIFSStream$StreamBlockOffsetIterator].next()"
    - "[net.jsign.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.StreamIterator].next()"
    - "[META-INF.versions.9.org.bouncycastle.util.Arrays$Iterator].next()"
    - "[net.jsign.commons.io.function.UncheckedIOIterator].next()"
    - "[net.jsign.commons.io.LineIterator].next()"
    - "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 15
    ICount: 52
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    - Branch String: "net.jsign.bouncycastle.cms.CMSSignedData:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.cms.CMSSignedData:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
        - "add(java.lang.Object)"
        - "<init>(java.util.Collection)"
        - "getEncapContentInfo()"
        - "next()"
        - "get(java.lang.Object)"
        - "getAlgorithm()"
        - "getId()"
        - "getObjectAt(int)"
        - "getDigestAlgorithm()"
        - "getContentType()"
        - "getSignerInfos()"
        - "getInstance(java.lang.Object)"
        - "size()"
    Callsites:
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getSignerInfos()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].size()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Set].getObjectAt(int)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignedData].getEncapContentInfo()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.ContentInfo].getContentType()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformation].<init>(net.jsign.bouncycastle.asn1.cms.SignerInfo,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.cms.CMSProcessable,byte[])"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cms.SignerInfo].getDigestAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getId()"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.cms.CMSSignedData:-1,1"
      Dst: "[net.jsign.bouncycastle.cms.SignerInformationStore].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServicePurpose"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].getAlgorithmName()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].getDigestSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.util.Memoable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].<init>(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].<init>(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar].checkConstraints(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$1:net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$1].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesConstraints].check(net.jsign.bouncycastle.crypto.CryptoServiceProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset(net.jsign.bouncycastle.util.Memoable)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.util.Memoable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].copyIn(net.jsign.bouncycastle.crypto.digests.GeneralDigest)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].copyIn(net.jsign.bouncycastle.crypto.digests.SM3Digest)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].doFinal(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int[],byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionUses: 6
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].finish()"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].intToBigEndian(int[],byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].reset()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.GeneralDigest].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processWord(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
        - "bigEndianToInt(byte[],int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].bigEndianToInt(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    functionUses: 3
    ICount: 173
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processLength(long)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    functionUses: 1
    ICount: 34
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "processBlock()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    functionUses: 3
    ICount: 173
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].processBlock()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    functionUses: 3
    ICount: 173
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-2"
        BranchSideFuncs:
        - "P0(int)"
        - "P1(int)"
        - "FF0(int,int,int)"
        - "FF1(int,int,int)"
        - "GG1(int,int,int)"
        - "GG0(int,int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P1(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG0(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].P0(int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].FF1(int,int,int)"
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].GG1(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.crypto.digests.SM3Digest].cryptoServiceProperties()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.digests.SM3Digest"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.crypto.CryptoServiceProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.digests.SM3Digest:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.Utils].getDefaultProperties(net.jsign.bouncycastle.crypto.Digest,int,net.jsign.bouncycastle.crypto.CryptoServicePurpose)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.crypto.Mac"
    - "int"
    - "net.jsign.bouncycastle.crypto.prng.EntropySource"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.Utils].getMaxSecurityStrength(net.jsign.bouncycastle.crypto.Mac)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].entropySize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].getMacSize()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].fill(byte[],byte)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update_Func(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].update(byte)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].update(byte)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "update(byte)"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getBlockSize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].doFinal(byte[],int)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[META-INF.versions.9.org.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CBCBlockCipherMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.Poly1305].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$AESCCMMAC$CCMMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.GMac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.macs.CMac].update(byte[],int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 81
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update(byte[])"
        - "<init>(byte[])"
        - "init(net.jsign.bouncycastle.crypto.CipherParameters)"
        - "reseed(byte[])"
        - "doFinal(byte[],int)"
        - "update(byte[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].init(net.jsign.bouncycastle.crypto.CipherParameters)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].update(byte[],int,int)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.Mac].doFinal(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "getEntropy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone(byte[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "hmac_DRBG_Update_Func(byte[],byte)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update_Func(byte[],byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.KeyParameter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.KeyParameter:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].hmac_DRBG_Update(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.IncrementalEntropySourceProvider$1].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$URLSeededEntropySourceProvider$3].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.NativeEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource].getEntropy()"
    - "[META-INF.versions.9.org.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$HybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-2"
        BranchSideFuncs:
        - "getEntropy()"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.EntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG:-1,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.json-io.util.io.Readers$AtomicBooleanReader].<init>()"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader"
    linkageType: null
    functionLinenumber: -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.jsign.json-io.util.io.Readers$AtomicBooleanReader:472,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.Readers$AtomicBooleanReader].read(java.lang.Object,java.util.Deque,java.util.Map)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Deque"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Number].longValue()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:479"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:487"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:482"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:485"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:488"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:491"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:492"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:495"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:492"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:495"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:492"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:495"
        BranchSideFuncs: []
    - Branch String: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:494"
      Branch Sides:
      - BranchSide: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:477,1"
      Dst: "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:482,1"
      Dst: "[java.lang.String].trim()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:482,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:486,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:486,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:490,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:494,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.json-io.util.io.Readers$AtomicBooleanReader:496,1"
      Dst: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[net.jsign.json-io.util.io.Readers].access$11(java.lang.Object,java.lang.Object,java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.Readers"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.json-io.util.io.Readers].getValueFromJsonObject(java.lang.Object,java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.Readers:548,1"
      Dst: "[net.jsign.json-io.util.io.Readers].getValueFromJsonObject(java.lang.Object,java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.json-io.util.io.JsonIoException].<init>(java.lang.String)"
    functionSourceFile: "net.jsign.json-io.util.io.JsonIoException"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.json-io.util.io.JsonIoException:45,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -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.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.asn1.x9.X962Parameters)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPublicKey].getW()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPublicKey].getW()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "java.security.spec.ECParameterSpec"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPrivateKey].getS()"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPrivateKey].getS()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOrderBitLength(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].addEnumeration(java.util.Vector,java.util.Enumeration)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].addEnumeration(java.util.Vector,java.util.Enumeration)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].keys()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].addEnumeration(java.util.Vector,java.util.Enumeration)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Vector"
    - "java.util.Enumeration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].keys()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].keys()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Hashtable].elements()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X962NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.sec.SECNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.nist.NISTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.gm.GMNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByNameLazy(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toLowerCase(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getCurveName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getName(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].privateKeyToString(java.lang.String,java.math.BigInteger,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[java.math.BigInteger].toString(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].multiply(net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].normalize()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].toString(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.FixedPointCombMultiplier:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECMultiplier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[])"
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionSourceFile: "net.jsign.bouncycastle.util.Fingerprint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 6
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.util.Fingerprint:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Fingerprint:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "net.jsign.bouncycastle.util.Fingerprint:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].publicKeyToString(java.lang.String,net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - "[java.math.BigInteger].toString(int)"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].toBigInteger()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].toString(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.util.Strings].lineSeparator()"
    functionSourceFile: "net.jsign.bouncycastle.util.Strings"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generateKeyFingerprint(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getEncoded(boolean)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getA()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getB()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].concatenate(byte[],byte[],byte[],byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Fingerprint].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNameFrom(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].<init>(java.security.spec.AlgorithmParameterSpec)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].<init>(java.security.spec.AlgorithmParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1].<init>(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil$1:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].create(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.ASN1Tag"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].<init>(int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Tag:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].getTagClass()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Tag].getTagNumber()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Tag"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.DESParameters].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DESParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - "[net.jsign.bouncycastle.crypto.params.DESParameters].isWeakKey(byte[],int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DESParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.KeyParameter].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.params.DESParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.DESParameters].isWeakKey(byte[],int)"
    - Src: "net.jsign.bouncycastle.crypto.params.DESParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.DESParameters].isWeakKey(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DESParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.DESParameters:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[net.jsign.bouncycastle.crypto.params.DESParameters].setOddParity(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.DESParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.DESParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.DESParameters:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].add(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addOne(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].fromBigInteger(java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].fromBigInteger(java.math.BigInteger)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].subFrom(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].half(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].add(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftDownBit(int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].inv(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Mod].checkedModOddInverse(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiply(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mul(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].multiplyAddToExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].mulAddTo(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].gte(int,int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].subFrom(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].negate(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].randomMult(java.security.SecureRandom,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].random(java.security.SecureRandom,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].random(java.security.SecureRandom,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].random(java.security.SecureRandom,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.SecureRandom"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    - "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "lessThan(int,int[],int[])"
        - "littleEndianToInt(byte[],int,int[],int,int)"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[java.security.SecureRandom].nextBytes(byte[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].littleEndianToInt(byte[],int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].lessThan(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].isZero(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 0
    ICount: 119
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    functionUses: 1
    ICount: 81
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs:
        - "gte(int[],int[])"
        - "addPInvTo(int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].square(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].squareN(int[],int,int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].createExt()"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].square(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    functionUses: 2
    ICount: 119
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].reduce32(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subtract(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].sub(int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subtractExt(int[],int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addTo(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].twice(int[],int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBit(int,int[],int,int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].gte(int[],int[])"
    - Src: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].addPInvTo(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field].subPInvFrom(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.math.ec.custom.gm.SM2P256V1Field:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineGetEncoded(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineGetEncoded()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineGetEncoded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineGetEncoded()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].getEncoded(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].localEngineGetParameterSpec(java.lang.Class)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.security.spec.AlgorithmParameterSpec"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getSalt()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getIterationCount()"
    - "[java.math.BigInteger].intValue()"
    - "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.math.BigInteger].intValue()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].<init>(byte[],int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getSalt()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].getOctets()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getIterationCount()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(java.security.spec.AlgorithmParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.spec.AlgorithmParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.security.spec.InvalidParameterSpecException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getSalt()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[javax.crypto.spec.PBEParameterSpec].getIterationCount()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(byte[],int,int,net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Object].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.util.Arrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateIssuer].clone()"
    - "[net.jsign.bouncycastle.cert.AttributeCertificateHolder].clone()"
    - "[net.jsign.bouncycastle.cms.SignerId].clone()"
    - "[net.jsign.commons.cli.Option].clone()"
    - "[META-INF.versions.9.org.bouncycastle.math.ec.LongArray].clone()"
    - "[net.jsign.bouncycastle.cert.selector.X509CertificateHolderSelector].clone()"
    - "[net.jsign.log4j.Level].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 45
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.util.Arrays:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.util.Arrays:-2"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "net.jsign.bouncycastle.util.Arrays:-1,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.DEROctetString].<init>(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.asn1.DEROctetString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    functionUses: 23
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.DEROctetString:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1OctetString].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1Integer].<init>(long)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1Integer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.math.BigInteger].toByteArray()"
    functionUses: 23
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1Integer:-1,1"
      Dst: "[java.math.BigInteger].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(byte[],java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(byte[])"
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameters].isASN1FormatString(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineInit(byte[])"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Primitive].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].getInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams].engineToString()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$AlgParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].<init>(net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.crypto.prng.EntropySourceProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - "[java.lang.System].currentTimeMillis()"
    - "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Pack].longToBigEndian(long)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].<init>(net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource,java.util.concurrent.atomic.AtomicBoolean,net.jsign.bouncycastle.crypto.prng.EntropySourceProvider,int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.digests.SHA512Digest].newInstance()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.macs.HMac].<init>(net.jsign.bouncycastle.crypto.Digest)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Strings].toByteArray(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].getEntropy()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].<init>(net.jsign.bouncycastle.crypto.Mac,int,net.jsign.bouncycastle.crypto.prng.EntropySource,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].isPredictionResistant()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].getEntropy()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].generate(byte[],byte[],boolean)"
    - "[META-INF.versions.9.org.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.HMacSP800DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    functionUses: 5
    ICount: 26
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-2"
        BranchSideFuncs:
        - "schedule()"
        - "reseed(byte[])"
        - "generate(byte[],byte[],boolean)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].reseed(byte[])"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.prng.drbg.SP80090DRBG].generate(byte[],byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource].schedule()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - "[net.jsign.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[META-INF.versions.9.org.bouncycastle.util.dispose.DisposalDaemon$2].run()"
    - "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].setDaemon(boolean)"
    - "[java.lang.Thread].start()"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-2"
        BranchSideFuncs:
        - "run()"
        - "<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].getAndSet(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.EntropyGatherer].<init>(net.jsign.bouncycastle.crypto.prng.EntropySource,java.util.concurrent.atomic.AtomicBoolean,java.util.concurrent.atomic.AtomicReference)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].setDaemon(boolean)"
    - Src: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource$SignallingEntropySource:-1,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource].entropySize()"
    functionSourceFile: "net.jsign.bouncycastle.crypto.CryptoServicesRegistrar$OneShotHybridEntropySource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHAAnd128BitAESBC].<init>()"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHAAnd128BitAESBC"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,int,int,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.symmetric.AES$PBEWithSHAAnd128BitAESBC:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.symmetric.util.PBESecretKeyFactory].<init>(java.lang.String,net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,boolean,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve,int,long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve"
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractF2m].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractF2m].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat256].create64()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1].createPoint(long[],long[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "long[]"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239FieldElement].<init>(long[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecT239K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].<init>()"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:120,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].compare(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.lang.String].length()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:147"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:149"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:158"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:163"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:140,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:142,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:147,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:156,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].compare(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.property.Property)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:120,1"
      Dst: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].compare(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.property.Property)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator].compare(net.jsign.poi.poifs.property.Property,net.jsign.poi.poifs.property.Property)"
    functionSourceFile: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "net.jsign.poi.poifs.property.Property"
    - "net.jsign.poi.poifs.property.Property"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.poi.poifs.property.Property].getName()"
    - "[java.lang.String].length()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:144"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:173"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:147"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:149"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:148"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:149"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:152"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:157"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:158"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:162"
        BranchSideFuncs: []
    - Branch String: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:163"
      Branch Sides:
      - BranchSide: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:140,1"
      Dst: "[net.jsign.poi.poifs.property.Property].getName()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:142,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:147,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:153,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.poi.poifs.property.DirectoryProperty$PropertyComparator:156,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[net.jsign.KeyStoreType$12].<init>(java.lang.String,int,boolean,boolean,boolean)"
    functionSourceFile: "net.jsign.KeyStoreType$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$12:315,1"
      Dst: "[net.jsign.KeyStoreType].<init>(java.lang.String,int,boolean,boolean,boolean,net.jsign.KeyStoreType$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$12].validate(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].parameterName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.KeyStoreType$12:318"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$12:321"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$12:320"
        BranchSideFuncs: []
    - Branch String: "net.jsign.KeyStoreType$12:321"
      Branch Sides:
      - BranchSide: "net.jsign.KeyStoreType$12:324"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.KeyStoreType$12:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$12:318,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$12:319,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.KeyStoreType$12:319,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$12:319,1"
      Dst: "[net.jsign.KeyStoreBuilder].parameterName()"
    - Src: "net.jsign.KeyStoreType$12:319,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.KeyStoreType$12:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.KeyStoreType$12:321,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].parameterName()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreType$12].getProvider(net.jsign.KeyStoreBuilder)"
    functionSourceFile: "net.jsign.KeyStoreType$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "net.jsign.KeyStoreBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].keystore()"
    - "[net.jsign.KeyStoreBuilder].storepass()"
    - "[net.jsign.jca.AzureKeyVaultSigningService].<init>(java.lang.String,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreType$12:328,1"
      Dst: "[net.jsign.KeyStoreBuilder].keystore()"
    - Src: "net.jsign.KeyStoreType$12:328,1"
      Dst: "[net.jsign.KeyStoreBuilder].storepass()"
    - Src: "net.jsign.KeyStoreType$12:328,1"
      Dst: "[net.jsign.jca.AzureKeyVaultSigningService].<init>(java.lang.String,java.lang.String)"
    - Src: "net.jsign.KeyStoreType$12:328,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].keystore()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.KeyStoreBuilder].storepass()"
    functionSourceFile: "net.jsign.KeyStoreBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.KeyStoreBuilder:102,1"
      Dst: "[net.jsign.KeyStoreBuilder].readPassword(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.AzureKeyVaultSigningService].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "net.jsign.jca.AzureKeyVaultSigningService"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[net.jsign.jca.AzureKeyVaultSigningService$lambda_new_0__122].bootstrap$(java.lang.String)"
    - "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.jca.AzureKeyVaultSigningService:80"
      Branch Sides:
      - BranchSide: "net.jsign.jca.AzureKeyVaultSigningService:83"
        BranchSideFuncs: []
      - BranchSide: "net.jsign.jca.AzureKeyVaultSigningService:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:50,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:60,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:80,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:83,1"
      Dst: "[net.jsign.jca.AzureKeyVaultSigningService$lambda_new_0__122].bootstrap$(java.lang.String)"
    - Src: "net.jsign.jca.AzureKeyVaultSigningService:83,1"
      Dst: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.jca.RESTClient].<init>(java.lang.String,java.util.function.Consumer)"
    functionSourceFile: "net.jsign.jca.RESTClient"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.function.Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.RESTClient:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.jca.RESTClient:46,1"
      Dst: "[net.jsign.jca.RESTClient$lambda_new_0__153].bootstrap$(java.util.function.Consumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.jca.SigningServiceJcaProvider].<init>(net.jsign.jca.SigningService)"
    functionSourceFile: "net.jsign.jca.SigningServiceJcaProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "net.jsign.jca.SigningService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.jca.SigningService].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[net.jsign.jca.SigningService].getName()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:39,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[net.jsign.jca.SigningServiceJcaProvider$lambda_new_2__174].bootstrap$(net.jsign.jca.SigningServiceJcaProvider,net.jsign.jca.SigningService)"
    - Src: "net.jsign.jca.SigningServiceJcaProvider:41,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].detach()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getAffineYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 115
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getXCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getYCoord()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getZCoord(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isZero(int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 21
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].isOne(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implSquare(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].implMultiply(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].sub(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].dec(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement$AbstractFp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-2"
        BranchSideFuncs:
        - "add(int,int[],int[],int[])"
        - "eq(int,int[],int[])"
        - "inc(int,int[])"
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].add(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].eq(int,int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].inc(int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twicePlus(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].getCurve()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].getInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].create(int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].square(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].isOne()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].subtract(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].add(int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].multiply(int[],int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].addBothTo(int,int[],int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].reduce23(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat].shiftUpBits(int,int[],int,int,int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Field].twice(int[],int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].threeTimes()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].isZero()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].twice()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].add(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].three(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].eight(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].four(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].two(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].doubleProductFromSquares(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECFieldElement"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].add(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].square()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].subtract(net.jsign.bouncycastle.math.ec.ECFieldElement)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].negate()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].isInfinity()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECFieldElement].negate()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement"
    - "net.jsign.bouncycastle.math.ec.ECFieldElement[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP521R1Point:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint$AbstractFp].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].<init>(net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve,int,int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.AbstractECLookupTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].getSize()"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].lookup(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].lookupVar(int)"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.raw.Nat224].create()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1].createPoint(int[],int[])"
    functionSourceFile: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1FieldElement].<init>(int[])"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].access$000()"
    - Src: "net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve$1:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.custom.sec.SecP224K1Curve].createRawPoint(net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement,net.jsign.bouncycastle.math.ec.ECFieldElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].<init>()"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].convertMidTerms(int[])"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getDomainParameters(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,net.jsign.bouncycastle.asn1.x9.X962Parameters)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getAdditionalECParameters()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isNamedCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].getParameters()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1Primitive"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - "[net.jsign.asn1.authenticode.SpcStatementType].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcString].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificateInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertList].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSipInfo].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcUuid].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptionScheme].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificateV2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.OtherRevocationInfoFormat].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.Attribute].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeTimeStampRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertIDv2].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyQualifierInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.PolicyInformation].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcLink].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.EncryptedPrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.CertificateList].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERSetParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldElement].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cmp.PKIStatusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.AuthenticodeSignedData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.AlgorithmIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.MessageImprint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSASSAPSSparams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcAttributeTypeAndOptionalValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.ResponseBytes].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.KeyDerivationFunc].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extensions].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBEParameter].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.ObjectDigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DistributionPointName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.IssuerSerial].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequestInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.TBSCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPublicKey].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PKCS12PBEParams].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignedData].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x500.AttributeTypeAndValue].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.ContentInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DigestInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampReq].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.Accuracy].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttCertValidityPeriod].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.V2Form].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TSTInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AltSignatureAlgorithm].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.tsp.TimeStampResp].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Holder].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ocsp.OCSPResponse].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.CCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerIdentifier].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.SigningCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DEROctetStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSerializedObject].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERSequenceParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBKDF2Params].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.IssuerAndSerialNumber].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralName].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.SignerInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.Attribute].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.AttributeCertificate].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x509.SubjectPublicKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.BERBitStringParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.Extension].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.cms.CMSAlgorithmProtection].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ess.ESSCertID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.CertificationRequest].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9FieldID].toASN1Primitive()"
    - "[net.jsign.bouncycastle.internal.asn1.cms.GCMParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.DSAParameter].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcSpOpusInfo].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9Curve].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.cryptopro.GOST3410PublicKeyAlgParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLBitStringParser].toASN1Primitive()"
    - "[net.jsign.asn1.authenticode.SpcPeImageData].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DERExternalParser].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.DLSetParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.x509.GeneralNames].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.BERTaggedObjectParser].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.RSAPrivateKey].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECParameters].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.pkcs.PBES2Parameters].toASN1Primitive()"
    - "[META-INF.versions.9.org.bouncycastle.asn1.ASN1Primitive:META-INF.versions.9.org.bouncycastle.asn1.ASN1Sequence$3:META-INF.versions.9.org.bouncycastle.asn1.ASN1Set$3:META-INF.versions.9.org.bouncycastle.asn1.x9.X962Parameters:META-INF.versions.9.org.bouncycastle.asn1.x9.X9ECPoint:net.jsign.bouncycastle.asn1.ASN1Primitive:net.jsign.bouncycastle.asn1.ASN1Sequence$3:net.jsign.bouncycastle.asn1.ASN1Set$3:net.jsign.bouncycastle.asn1.cmp.PKIFreeText:net.jsign.bouncycastle.asn1.cmp.PKIStatus:net.jsign.bouncycastle.asn1.cms.Attributes:net.jsign.bouncycastle.asn1.cms.Time:net.jsign.bouncycastle.asn1.ocsp.OCSPResponseStatus:net.jsign.bouncycastle.asn1.sec.ECPrivateKey:net.jsign.bouncycastle.asn1.x500.RDN:net.jsign.bouncycastle.asn1.x500.X500Name:net.jsign.bouncycastle.asn1.x509.AltSignatureValue:net.jsign.bouncycastle.asn1.x509.AttCertIssuer:net.jsign.bouncycastle.asn1.x509.Certificate:net.jsign.bouncycastle.asn1.x509.ExtendedKeyUsage:net.jsign.bouncycastle.asn1.x509.IssuingDistributionPoint:net.jsign.bouncycastle.asn1.x509.KeyPurposeId:net.jsign.bouncycastle.asn1.x509.TBSCertList$CRLEntry:net.jsign.bouncycastle.asn1.x509.Time:net.jsign.bouncycastle.asn1.x9.X962Parameters:net.jsign.bouncycastle.asn1.x9.X9ECPoint].toASN1Primitive()"
    - "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 8
    ICount: 44
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    - Branch String: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-2"
        BranchSideFuncs:
        - "fromByteArray(byte[])"
        - "toASN1Primitive()"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Encodable].toASN1Primitive()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1UniversalType].fromByteArray(byte[])"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier:-1,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.asn1.x9.X9ECParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X962Parameters].isImplicitlyCA()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X962Parameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPublicKey].getW()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - "[java.lang.Throwable].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPublicKey].getW()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 2
    argTypes:
    - "java.security.spec.ECParameterSpec"
    - "java.security.spec.ECPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PublicKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePublic(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPublicKey].getW()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPublicKey].getQ()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPublicKeyParameters].<init>(net.jsign.bouncycastle.math.ec.ECPoint,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPublicKey].getW()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(java.security.spec.ECParameterSpec,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPublicKey(net.jsign.bouncycastle.asn1.x509.SubjectPublicKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePublicKeyParameter(java.security.PublicKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPrivateKey].getS()"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - "[java.lang.Throwable].toString()"
    - "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    functionUses: 0
    ICount: 75
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPrivateKey].getS()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[soot.dummy.InvokeDynamic].makeConcatWithConstants(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec"
    linkageType: null
    functionLinenumber: -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: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.math.BigInteger"
    - "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECKeyParameters].<init>(boolean,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePrivateScalar(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionSourceFile: "net.jsign.bouncycastle.crypto.params.ECDomainParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jsign.bouncycastle.math.ec.ECCurve"
    - "net.jsign.bouncycastle.math.ec.ECPoint"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].validatePublicPoint(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "net.jsign.bouncycastle.crypto.params.ECDomainParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.util.Arrays].clone(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    argCount: 1
    argTypes:
    - "java.security.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - "[java.security.spec.ECParameterSpec].getGenerator()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - "[java.security.spec.ECParameterSpec].getOrder()"
    - "[java.security.spec.ECParameterSpec].getCofactor()"
    - "[java.math.BigInteger].valueOf(long)"
    - "[java.security.spec.EllipticCurve].getSeed()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertCurve(java.security.spec.EllipticCurve)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getGenerator()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertPoint(net.jsign.bouncycastle.math.ec.ECCurve,java.security.spec.ECPoint)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getOrder()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.ECParameterSpec].getCofactor()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.math.BigInteger].valueOf(long)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[java.security.spec.EllipticCurve].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].<init>(java.lang.String,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    - "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    - Branch String: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-2"
        BranchSideFuncs:
        - "<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
        - "getInstance(java.lang.Object)"
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1Sequence].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].<init>(net.jsign.bouncycastle.asn1.ASN1Sequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionSourceFile: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getPrivateKeyAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x509.AlgorithmIdentifier].getAlgorithm()"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getAsymmetricKeyInfoConverter(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.jce.provider.BouncyCastleProvider:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter].generatePrivate(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "net.jsign.bouncycastle.crypto.params.AsymmetricKeyParameter"
    argCount: 1
    argTypes:
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - "[java.security.interfaces.ECKey].getParams()"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - "[java.security.interfaces.ECPrivateKey].getS()"
    - "[java.security.Key].getEncoded()"
    - "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 79
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECKey].getParameters()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECNamedCurveParameterSpec].getName()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.interfaces.ECPrivateKey].getD()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getSeed()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECNamedDomainParameters].<init>(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier,net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECPrivateKeyParameters].<init>(java.math.BigInteger,net.jsign.bouncycastle.crypto.params.ECDomainParameters)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.params.ECDomainParameters].<init>(net.jsign.bouncycastle.math.ec.ECCurve,net.jsign.bouncycastle.math.ec.ECPoint,java.math.BigInteger,java.math.BigInteger,byte[])"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECKey].getParams()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.EC5Util].convertSpec(java.security.spec.ECParameterSpec)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.interfaces.ECPrivateKey].getS()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.security.InvalidKeyException].<init>(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo].getInstance(java.lang.Object)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.provider.BouncyCastleProvider].getPrivateKey(net.jsign.bouncycastle.asn1.pkcs.PrivateKeyInfo)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].generatePrivateKeyParameter(java.security.PrivateKey)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOrderBitLength(net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration,java.math.BigInteger,java.math.BigInteger)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration"
    - "java.math.BigInteger"
    - "java.math.BigInteger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.math.BigInteger].bitLength()"
    - "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].bitLength()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.config.ProviderConfiguration].getEcImplicitlyCa()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(java.lang.String)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].length()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "net.jsign.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveOid(net.jsign.bouncycastle.jce.spec.ECParameterSpec)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[java.math.BigInteger].equals(java.lang.Object)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECCurve].equals(net.jsign.bouncycastle.math.ec.ECCurve)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.math.ec.ECPoint].equals(net.jsign.bouncycastle.math.ec.ECPoint)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getNames()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>()"
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].addEnumeration(java.util.Vector,java.util.Enumeration)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    - "[java.util.Vector].elements()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].addEnumeration(java.util.Vector,java.util.Enumeration)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getNames()"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.util.Vector].elements()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByName(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByName(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByNameX9(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getN()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getN()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getH()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getH()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getCurve()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECCurve"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.X9ECParameters].getG()"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.X9ECParameters:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECPoint].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.jce.spec.ECParameterSpec].getG()"
    functionSourceFile: "net.jsign.bouncycastle.jce.spec.ECParameterSpec"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "net.jsign.bouncycastle.math.ec.ECPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getOID(java.lang.String)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.nist.NISTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getOID(java.lang.String)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil].getNamedCurveByOid(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1"
      Branch Sides:
      - BranchSide: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "META-INF.versions.9.org.bouncycastle.jcajce.provider.asymmetric.util.ECUtil:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.crypto.ec.CustomNamedCurves].getByOIDLazy(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.crypto.ec.CustomNamedCurves:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X9ECParametersHolder].getParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classConcrete: true
      classEnum: false
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionSourceFile: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "net.jsign.bouncycastle.asn1.x9.X9ECParameters"
    argCount: 1
    argTypes:
    - "net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.cryptopro.ECGOST3410NamedCurves].getByOIDX9(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - "[net.jsign.bouncycastle.asn1.gm.GMNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    - Branch String: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1"
      Branch Sides:
      - BranchSide: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.x9.X962NamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.sec.SECNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.teletrust.TeleTrusTNamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-1,1"
      Dst: "[net.jsign.bouncycastle.asn1.anssi.ANSSINamedCurves].getByOID(net.jsign.bouncycastle.asn1.ASN1ObjectIdentifier)"
    - Src: "net.jsign.bouncycastle.asn1.x9.ECNamedCurveTable:-